南京做网站品牌,怎样做电商生意,网站页面设计教程,看广告赚钱个人博客
ThreadPoolExecutor基于ctl变量的声明周期管理 | iwts’s blog
总集
想要完整了解下ThreadPoolExecutor#xff1f;可以参考#xff1a;
基于源码详解ThreadPoolExecutor实现原理 | iwts’s blog
ctl字段的应用
线程池内部使用一个变量ctl维护两个值#xff…个人博客
ThreadPoolExecutor基于ctl变量的声明周期管理 | iwts’s blog
总集
想要完整了解下ThreadPoolExecutor可以参考
基于源码详解ThreadPoolExecutor实现原理 | iwts’s blog
ctl字段的应用
线程池内部使用一个变量ctl维护两个值
运行状态runState线程数量 (workerCount) 在具体实现中就是进行位运算 COUNT_BITS如果是32位的话那么结合下面的一套左移、与、非的位运算可以总结为
ctl的高3位保存runState即运行状态。ctl的低29位保存workerCount即有效线程数量。
除了ctl解析方法还提供ctl计算方法即根据runState和workerCount计算出ctl值。
这样合并的好处是操作的时候单锁就可以处理了CAS也非常方便位运算速度也快。