
线程
骑士李四
专心做好技术的人
展开
-
Java线程池如何合理配置核心线程数
线程数的设置的最主要的目的是为了充分并合理地使用 CPU 和内存等资源,从而最大限度地提高程序的性能,因此让我们一起去探索吧!首先要考虑到 CPU 核心数,那么在 Java 中如何获取核心线程数?可以使用 Runtime.getRuntime().availableProcessor() 方法来获取(可能不准确,作为参考)在确认了核心数后,再去判断是 CPU 密集型任务还是 IO 密集型任务:CPU 密集型任务:比如像加解密,压缩、计算等一系列需要大量耗费 CPU 资源的任务,大部分场景下都是纯原创 2021-12-08 15:23:38 · 1900 阅读 · 0 评论 -
ThreadPoolTaskExecutor 线程池的使用
https://www.jianshu.com/p/3d875dd9d5db原创 2021-12-03 13:26:24 · 263 阅读 · 0 评论 -
乐观锁和悲观锁的AQS、sync和Lock
骑士李四为您记录:CAS(Compare And Swap 比较并且替换)是乐观锁的一种实现方式,是一种轻量级锁,JUC 中很多工具类的实现就是基于 CAS 的。CAS 是怎么实现线程安全的?线程在读取数据时不进行加锁,在准备写回数据时,先去查询原值,操作的时候比较原值是否修改,若未被其他线程修改则写回,若已被修改,则重新执行读取流程。...原创 2020-04-18 19:02:45 · 862 阅读 · 0 评论