Java并发编程
weixin_39913976
这个作者很懒,什么都没留下…
展开
-
Java原子性
Java哪些操作是原子操作?1.Java内存模型保证read、load、assign、use、store、write是原子性的,可以认为基本数据类型的访问读写是具备原子 性的2.非原子协议:32位虚拟机的long、double变量的读写操作不是原子性的,加上volatile可以保证原子性3.引用变量的读写操作是原子性的https://docs.oracle.com/javase/specs/jls/se7/html/jls-17.html#jls-17.7Writes to and reads o原创 2020-12-24 15:55:43 · 143 阅读 · 1 评论 -
ThreadPoolExecutor参数allowCoreThreadTimeOut
ThreadPoolExecutor的执行流程有一点可能被吐槽过,就是只有缓存队列已经满了的时候才会使用到maxPoolSize创建新的线程.也就是说如果corePoolSize设为了0的时候,要等到队列满了,才会创建线程去执行任务之前有被问到,希望没有任务的时候线程池里的线程可以停掉。可能对性能和资源有过考虑的人都会想到这个问题吧。今天看JDK源码的时候发现了ThreadPoolExecut...原创 2019-11-17 22:28:37 · 3069 阅读 · 1 评论