线程
yaMa_码子
码子的源码之路
展开
-
CompletionService源码分析
CompletionService源码分析本文假设你已经会使用线程池以及了解FutureTask了,不熟悉的源码强烈建议看下之前的博文Java线程池源码分析,读完在读本片博文轻松加愉快。还是总结下任务的提交流程: 1)submit(taks) task为Callable或者Runnable。 2)任务包装成FutureTask,执行executor(futureTask)。 ...原创 2018-07-18 11:52:21 · 881 阅读 · 0 评论 -
Semaphore源码-JUC线程同步工具1
Semaphore源码-JUC线程同步工具1之前JAVA锁Lock说过一句话线程获取到了锁就是AQS得成员state+1了,今天讲的信号量Semaphore还是跟它有关系。何为信号量Semaphore是计数信号量。Semaphore管理一系列许可证。每个acquire方法阻塞,直到有一个许可证可以获得然后拿走一个许可证;每个release方法增加一个许可证,这可能会释放一个阻塞的acq...原创 2018-07-13 17:41:20 · 983 阅读 · 0 评论 -
CountDownLatch源码-JUC线程同步工具2
CountDownLatch源码-JUC线程同步工具2上篇博文将的线程同步工具信号量Semaphore源码 以停车车辆坑位表示并发量来展开阐述的。何为CountDownLatchCountDownLatch能够使一个线程在等待另外一些线程完成各自工作之后,再继续执行。使用一个计数器进行实现。计数器初始值为线程的数量。当每一个线程完成自己任务后,计数器的值就会减一。当计数器的值为0时,...原创 2018-07-13 19:09:56 · 881 阅读 · 0 评论