随笔分类 -  并发

摘要:[TOC] Semaphore、Barrier、Latch都属于同步工具类 1、信号量(Semaphore) 描述 ​ 计数信号量用来控制同时访问某个特定资源的操作数量,或者同时执行某个制定操作的数量。还可以用来实现资源池。 场景 ​ 信号量就是一个计数器,所以应用很广泛。 例如:我们构建一个有界队 阅读全文
posted @ 2019-10-20 22:46 undifinedException 阅读(1774) 评论(0) 推荐(0)
摘要:volatile变量 ​ 这是Java提供的一种弱同步机制;volatile变量有2种语义。 volatile变量对所有线程均可见 volatile变量禁止指令重排序 volatile变量对所有线程均可见 ​ 可见性是指:一条线程改变了变量的值,其他线程都能知道。 在解释这个规则原理之前,先对内存可 阅读全文
posted @ 2019-09-22 17:15 undifinedException 阅读(198) 评论(0) 推荐(0)
摘要:[toc] 问:当一个对象中有2个方法同时用synchronized修饰,那么当线程一在访问方法1时,其他线程是否可以访问方法二? 答案:由于对象的内置锁(监视器锁)是唯一的,所以当线程一在访问对象的方法1时,持有了该对象的内置锁,那么再线程一释放该内置锁之前,其他线程是无法获取该对象内置锁,所以其 阅读全文
posted @ 2019-09-22 12:38 undifinedException 阅读(777) 评论(0) 推荐(0)
摘要:[toc] 一、线程安全定义 ​ 定义: ​ 多个线程访问同一个对象时,如果不用考虑这些线程在运行时环境下的调度和交替执行,也不需要进行额外的同步,或者在调用方进行任何其他操作,调用这个对象的行为都可以获得正确的结果,那么这个对象就是线程安全的。 该定义由Brian Goetz在《Java Conc 阅读全文
posted @ 2019-06-05 22:13 undifinedException 阅读(5088) 评论(0) 推荐(5)
摘要:1、并发程序 2、应用 阅读全文
posted @ 2019-06-03 22:37 undifinedException 阅读(7871) 评论(0) 推荐(0)