
concurrent
proccessor
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
并发编程--显示锁
并发编程–显示锁 1.预备概念 显示锁和内部锁区别? 最大区别在于是否需要手动地去获取、释放锁,手动获取和释放锁的方法就叫显示锁,否则就是内部锁。ReentrantLock 属于显示锁,synchronzied 属于内部锁。 为什么需要显示锁? 内部锁拿锁和取锁的过程比较固定,没有办法灵活的获取和释放锁,显示锁就是手动获取和释放锁,提供超时拿锁、尝试拿锁的功能,这些功能是内部锁不具备的。 2....原创 2019-12-01 17:28:48 · 229 阅读 · 0 评论 -
原子操作CAS
并发编程–原子操作CAS 1.预备概念 CAS:(compared and sweep)比较后进行交换,是一种乐观锁的设计思想。 synchronized:是以一种基于悲观锁的实现。 原子操作:不会被线程调度机制打断的操作;这种操作一旦开始,就一直运行到结束,中间不会有任何上下文切换,在x86 平台上,CPU提供了在指令执行期间对总线加锁的手段,需要硬件支持。 2.CAS原理 一.实现原理: 流程...原创 2019-11-30 22:30:14 · 257 阅读 · 0 评论 -
并发编程--synchronized、volatile、ThreadLocal的使用
并发编程–synchronized、volatile、ThreadLocal的使用 1.synchronized内置锁 加锁目标对象 对象锁 类锁 加锁的注意事项: 各个线程竞争锁的目标对象必须是同一个。 各个线程竞争锁的目标对象不能更改,例如: /** * 类说明:错误的加锁和原因分析 */ public class TestIntegerSyn { public stat...原创 2019-11-30 10:54:08 · 442 阅读 · 0 评论 -
并发编程一(线程间的共享和协作)
并发编程一(线程间的共享和协作) 基础概念 进程和线程的区别? CPU核心数和线程数的关系? 什么是CPU时间片轮转机制?上下文切换? 并行和并发? 进程是操作系统资源分配的基本单位,而线程是任务调度和执行的基本单位,包含关系,一个进程包含多个线程。 内核数:线程数=1:1 超线程技术后 内核数:线程数=1:2 RR时间片轮换机制,CPU来回切换线程运行。上下文切换非常耗费CPU资...原创 2019-11-27 23:32:53 · 434 阅读 · 0 评论