摘要: CountDownLatch简介 (1)用于解决什么问题? 在并发编程的场景中,最常见的一个case是某个任务的执行,需要等到多个线程都执行完毕之后才可以进行,CountDownLatch可以很好解决这个问题。 (2)使用说明 同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程 阅读全文
posted @ 2019-01-04 09:21 开嘴的板栗 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 一、锁机制存在的问题 (1)在多线程竞争下,加锁、释放锁会导致比较多的上下文切换和调度延时,引起性能问题。 (2)一个线程持有锁会导致其它所有需要此锁的线程挂起。 (3)如果一个优先级高的线程等待一个优先级低的线程释放锁会导致优先级倒置,引起性能风险。 ​ volatile 是不错的机制,但是vol 阅读全文
posted @ 2019-01-02 14:36 开嘴的板栗 阅读(158) 评论(0) 推荐(0) 编辑
摘要: volatile 一、 volatile修饰的变量具有内存可见性 volatile是变量修饰符,其修饰的变量具有内存可见性。 可见性 也就是说一旦某个线程修改了该被volatile修饰的变量,它会保证修改的值会立即被更新到主存,当有其他线程需要读取时,可以立即获取修改之后的值。 在Java中为了加快 阅读全文
posted @ 2019-01-02 10:57 开嘴的板栗 阅读(144) 评论(0) 推荐(0) 编辑