线程B和线程C中任意一个线程拿到锁都需要等待条件成立,线程C依赖线程B,而线程B依赖线程A,所以他们会一直阻塞直至线程A执行上述两个方法中,核心问题就是如何实现线程间的条件唤醒,如方法一,我们可以自定义state状态变量来与各个线程绑定,每个线程都有自己对应的state状态,当state变量当前值与线程自身期望的state值相同才唤醒当前线程。也可以使用juc中ReentrantLock的提供的Condition条件完成线程间的条件唤醒
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) | Powered by Discuz! X3.4 |