并发编程
木头的木
这个作者很懒,什么都没留下…
展开
-
线程原子操作
什么是原子操作?如何实现原子操作?syn基于阻塞的锁的机制,1.被阻塞的锁的优先级很高。2.拿到所得线程一直不释放锁锁就GG.3.大量的竞争,消耗cpu,同时可能带来死锁或者其他的线程安全问题。CAS的原理:CAS(Compare And Swap),指令级别保证这是一个原子操作三个运算符:一个内存地址V,一个期望值A,一个新值B.基本思路:如果地址V上的值和期望的值A相等,就给地址V赋...原创 2020-04-21 21:39:01 · 252 阅读 · 0 评论 -
Fork/Join框架简介与基本运用
ForkJoin框架是Java 7 提供的一个分治思想的基本框架,即把一个大任务分割成若干个小任务,最终汇总每一个任务结果后得到大任务结果。通过查阅API发现,ForkJoinPool继承AbstractExecutorService,实现了Executor,ExecutorService。ForkJoinPool用来实现工作窃取 算法。一、ForkJoinTask及其子类通过查看API发现,...原创 2020-04-20 22:24:59 · 246 阅读 · 0 评论 -
并发编程之线程基础
一、基础概念CPU核心数和线程数的关系:核心数:线程数 = 1:1;对于英特尔发布的超线程技术–>1:21.物理cpu数:主板上实际插入的cpu数量,可以数不重复的 physical id 有几个(physical id)2.cpu核数:单块CPU上面能处理数据的芯片组的数量,如双核、四核等 (cpu cores)3.逻辑cpu数:一般情况下,逻辑cpu=物理CPU个数×每颗核数...原创 2020-04-10 21:29:34 · 184 阅读 · 0 评论