多线程
m0_37039331
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
JUC 之 Semaphore 源码分析
Semaphore 主要用于限量控制并发执行代码的工具类, 其内部通过 一个 permit 来进行定义并发执行的数量。/** * 使用非公平版本构件 Semaphore */public KSemaphore(int permits){ sync = new NonfairSync(permits);}/** * 指定版本构件 Semaphore */public KS...原创 2019-02-21 23:39:14 · 158 阅读 · 0 评论 -
JUC 之 CountDownLatch 源码分析
CountDownLatch用于同步一个或多个任务,强制他们等待由其他任务执行的一组操作完成。源码分析:CountDownLatch没有显示继承哪个父类或者实现哪个父接口,那么其父类是Object。 private static final class Sync extends AbstractQueuedSynchronizer { // 版本号 pri...原创 2019-02-22 00:03:51 · 120 阅读 · 0 评论 -
线程池---如何保证核心线程不被销毁的
问题:1.线程池是怎么保证他的核心线程不释放 而一直等待任务的执行的呢?2.我们一直理解的线程run方法执行完毕线程就销毁是不正确的?3.还有我们为何通过设置allowCoreThreadTimeOut(true) 就能使核心线程销毁的呢?答案:1.线程阻塞2.和那个关系不大3.可以的有兴趣的话,可以看看下面的源码分析:从 exexute 方法开始:public void ex...原创 2019-02-19 21:08:01 · 7868 阅读 · 7 评论
分享