
Java并发编程
文章平均质量分 79
ShiXueTanLang
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
浅谈synchronized
synchronized、Monitor、Java对象头、偏向锁、轻量级锁、自旋锁、自适应自旋锁、重量级锁、锁消除、锁粗化原创 2017-12-10 14:49:45 · 333 阅读 · 0 评论 -
线程安全
为什么要线程安全? 无论何时,只要有多于一个的线程访问给定的状态变量,并且其中某个线程会写入该变量,此时必须使用同步来协调线程对该变量的访问。否则,就有可能出现写入线程未把更新写入共享内存,而读取线程读取旧值的情况,从而造成线程不安全的情况。Java中首要的同步机制是synchronized关键字。他提供了独占锁。除此以外,属于同步还包括volatile关键字、显示锁和原理变量。原创 2017-12-03 17:34:18 · 367 阅读 · 0 评论 -
共享对象
1. 共享对象可见性可见性涉及的方面: (1) 过期数据非线程安全的计数器:/** * @Title: NotThreadSafetyCounter.java * @Package visibility * @Description: TODO * @author 落叶飞翔的蜗牛 * @date 2017年12月3日 下午6:47:35*原创 2017-12-04 23:30:11 · 2074 阅读 · 0 评论 -
同步器Synchronizer
闭锁 FutureTask 信号量 关卡原创 2017-12-17 22:31:09 · 2083 阅读 · 0 评论 -
阅读Java线程池ThreadPoolExecutor源码
1. 阅读Java线程池ThreadPoolExecutor源码(上)1.1前言线程池主要解决两个问题:一方面当执行大量异步任务时候线程池能够提供较好的性能,这是因为使用线程池可以使每个任务的调用开销减少(因为线程池线程是可以复用的)。另一方面线程池提供了一种资源限制和管理的手段,比如当执行一系列任务时候对线程的管理,每个ThreadPoolExecutor也保留了一些基本的统计数据,原创 2017-12-24 22:56:43 · 583 阅读 · 1 评论