1.JUC基础:
http://www.goldendoc.org/2011/05/juc/
2.Java并发编程J.U.C之锁的获取与释放
http://www.goldendoc.org/2011/06/lock_acquire_release/
3.Java并发编程J.U.C之Condition
http://goldendoc.iteye.com/blog/1096763
4.锁
1)非阻塞算法-ReentrantLock代码剖析之ReentrantLock.lock
http://www.iteye.com/topic/623398
5.Java 多线程与并发编程专题http://www.ibm.com/developerworks/cn/java/j-concurrent/
2)violate
volatile相当于synchronized的弱实现,也就是说volatile实现了类似synchronized的语义,却又没有锁机制。volatile并不能保证线程安全的,也就是说volatile字段的操作不是原子性的,volatile变量只能保证可见性(一个线程修改后其它线程能够理解看到此变化后的结果)
应用volatile变量的三个原则:
(1)写入变量不依赖此变量的值,或者只有一个线程修改此变量
(2)变量的状态不需要与其它变量共同参与不变约束
(3)访问变量不需要加锁
3)Condition
wait 和 notify。那么Condition的优势是支持多路等待,就是我可以定义多个Condition,每个condition控制线程的一条执行通路。传统方式只能是一路等待。
http://wangpengfei360.iteye.com/blog/1423273
5.java线程学习:
http://hi.baidu.com/kevindoudou/blog/item/cfcf880f98c5be2f6059f3a2.html
http://hi.baidu.com/kevindoudou/blog/item/d6cca1f01d09c6c67931aaae.html
http://hi.baidu.com/kevindoudou/blog/item/dd79883d020333eb3c6d977a.html
http://hi.baidu.com/kevindoudou/blog/item/0249a2cb39769e1abe09e6de.html
http://hi.baidu.com/kevindoudou/blog/item/167e25032f75ba8dd43f7cde.html
6.threadPoolExecutor:
http://dongxuan.iteye.com/blog/901689
http://blog.csdn.net/robage/article/details/1620691
线程池:
自建线程池例子:http://apps.hi.baidu.com/share/detail/32246373,待实践
ThreadPoolExecutor运转机制详解
http://blog.csdn.net/cutesource/article/details/6061229
7.java线程安全
总结的非常好:
http://www.iteye.com/topic/806990
http://www.iteye.com/topic/808550
8.CountDownLatch
在多线程程序设计中,经常会遇到一个线程等待一个或多个线程的场景,遇到这样的场景应该如何解决?
如果是一个线程等待一个线程,则可以通过await()和notify()来实现;
如果是一个线程等待多个线程,则就可以使用CountDownLatch和CyclicBarrier来实现比较好的控制。
CountDownLatch使得使用CountDownLatch.await()的线程(当前线程)阻塞直到所有其它拥有CountDownLatch的线程执行完毕(countDown()结果为0)
实例:http://iamzhongyong.iteye.com/blog/1439310
说明:
L28
//等待开始信号信号 ,在L9 s.countDown()未执行前(计数器变为0),线程都会阻塞在此
startSingal.await();
一旦s.countDown执行完,计数器变为0后,L9后的代码和L28后的代码无序执行
两个顺序:
1)信号开始(i am the judge ,now ,i start the singal),所有的线程才会“start to executer”,在此之前,6个thread
都在准备状态(当然,有的并未做好准备,所以信号开始了,有的还没执行L26)
2)所有线程执行完后(L11 e.await()控制),最终主线程执行最后"all is over"
http://iamzhongyong.iteye.com/blog/1458349
9.探索java并发编程
http://www.iteye.com/topic/730241
java并发学习
http://lavasoft.blog.51cto.com/62575/115112
分享到:
相关推荐
JAVA并发编程体系梳理脑图
"Java并发思维导图" 这句话表明了一个中心主题,即Java并发编程的相关概念和知识。以下是对这句话的扩充: Java并发编程是Java编程中的一个重要领域,它涉及到多个线程之间的协作和竞争。在Java中,并发编程可以...
JUC并发编程知识点梳理思维导图
《Java并发编程实战》经典并发书籍思维导图知识梳理
对java并发知识的完整梳理,可以通过该文档了解到并发整个知识体系。
"Java并发思维导图" 这句话表明了一个中心主题,即Java并发编程的相关概念和知识。以下是对这句话的扩充: Java并发编程是Java编程中的一个重要领域,它涉及到多个线程之间的协作和竞争。在Java中,并发编程可以...
深度解析java并发机制,Java高级开发,架构师思维导图 Java架构师必备技能,全方位仔细梳理所需各个知识点。让您有更多时间陪家人陪朋友
并发编程解决的核心问题 分工(如何高效地拆解任务并分配给线程)Fork/Join 框架 同步(指的是线程之间如何协作)CountDownLatch 互斥(保证同一时刻只允许一个线程访问共享资源)可重入锁 如何学习 跳出来,看全景...
java并发编程所有知识点的xmind,方便面试或复习、知识梳理; java并发编程; java
编程工具 eclipse myeclipse idea vi VS webstorm sublime text 版本控制 svn git 项目管理 maven Nexus Jenkins 工作软件 反编译软件 office系列 下载器 adobe系列 记录软件 思维导图 ...
本资源为公共资源,总页数283页,涵盖技术点:java基础,并发编程,源码,微服务,分布式,数据库,算法,设计模式等。
面渣逆袭-Java并发编程 面渣逆袭-Java集合框架 面渣逆袭-JVM 面渣逆袭-MyBatis 面渣逆袭-Mysql 面渣逆袭-Redis 面渣逆袭-RocketMQ 面渣逆袭-Spring 面渣逆袭-操作系统 面渣逆袭-分布式 面渣逆袭-计算机网络
这些技能图谱包括但不限于编程语言、数据库、网络安全、前端开发、后端开发、云计算、人工智能等领域。每张图谱都以清晰的架构图、知识点分类和详细的解释说明,帮助读者了解和掌握各种技能要点。此外,这些图谱还...
Java 笔记 Java 的学习笔记和整理的知识点,包含Java语言基础、Java服务端方向的框架、设计模式、计算机网络、算法、Java 虚拟机和数据库等多个方面的内容。想了解前端的内容参考,Android...Java 并发编程 模块 编号
适合人群:具备一定Java编程基础,工作1-4年的研发人员 能学到什么:①异步消息队列技术、共享缓存技术是怎么在系统中体现的;②互联网人寿保险中台系统都是如何设计和实现的。 阅读建议:此资源以开发互联网人寿...
初识Java 9模块化编程.pdf 区块链难理解?200行代码教你写一个自己的区块链!.pdf 十个问答助你了解 Redis 高可用架构及 Redis 运维.pdf 后Kubernetes时代,带你系统梳理K8S 12大关键特性.pdf 容器如“衣服”,而...
【课程介绍】很多人面试...主要包含:JAVA基础部分、核心编程、Web编程、MyBatis、Spring、SpringMVC、JVM、性能优化、技术之外必问题。每一个知识点都是精选、经典的重现! 学完本教程,让你面试路上从容自信!
梳理大纲 v1.0.1 2019-11-15 Rock.Sang 完善所有目录结构 v1.0.2 2020-01-07 Rock.Sang 添加英语模块 v1.0.3 2020-01-17 Rock.Sang 添加LeetCode v1.0.4 2020-02-19 Rock.Sang 添加集合类源码分析 v1.0.5 2020-03-08...
俗称“Java商城秒杀系统”,主要介绍了当前一些电商平台或者商城在举办一些商品秒杀、抢购活动时所涉及的相关业务流程,其中,主要包括“秒杀活动列表的展示”、“秒杀活动详情的获取”、“用户登录认证服务”、“高...
欢迎大家来到Higmin GitHub项目! 创建此工程是为了巩固基础知识当然能对社区做点贡献也是我小小的心愿〜 本工程包含了SpringAOP,死锁,JUC同步锁,读-... AOP面向切面编程,也是面试当中经常会被问到的一环,实际上是