摘要:
wait notify 原理 Owner 线程发现条件不满足,调用 wait 方法,即可进入 WaitSet 变为 WAITING 状态 BLOCKED 和 WAITING 的线程都处于阻塞状态,不占用 CPU 时间片 BLOCKED 线程会在 Owner 线程释放锁时唤醒 WAITING 线程会在 阅读全文
posted @ 2020-12-29 15:28
天宇轩-王
阅读(349)
评论(0)
推荐(0)
摘要:
所谓的“线程八锁”,其实就是考察 synchronized 锁住的是哪个对象 情况1:12 或 21 锁住的为同一对象,2个线程都有可能执行 @Slf4j(topic = "c.Number") class Number{ public synchronized void a() { log.deb 阅读全文
posted @ 2020-12-29 10:53
天宇轩-王
阅读(214)
评论(0)
推荐(0)
摘要:
在静态方法和非静态方法上加 Synchronized的区别 非静态方法 class Test{ public synchronized void test() { } } 等价于 class Test{ public void test() { synchronized(this) { } } } 阅读全文
posted @ 2020-12-29 10:19
天宇轩-王
阅读(134)
评论(0)
推荐(0)
摘要:
3种线程阻塞唤醒 wait/notify /** * @author WGR * @create 2020/12/29 -- 0:28 */ public class Test6 { private static Object objectLock = new Object(); public st 阅读全文
posted @ 2020-12-29 01:12
天宇轩-王
阅读(197)
评论(0)
推荐(0)
摘要:
ReentrantLock源码探究 后面的流程可以结合:https://www.cnblogs.com/dalianpai/p/14202617.html 一起看 相对于 synchronized 它具备如下特点 可中断 可以设置超时时间 可以设置为公平锁 支持多个条件变量 与 synchroniz 阅读全文
posted @ 2020-12-29 00:20
天宇轩-王
阅读(368)
评论(0)
推荐(1)

浙公网安备 33010602011771号