当我们调用LockSupport.unpark()时,线程处于哪种状态?

时间:2019-03-09 14:59:36

标签: java multithreading thread-safety

我们知道,当我们调用LockSupport.park()时,线程A将处于等待状态,并等待另一个线程调用LockSupport.unpark()。因此,当我们调用它时,线程A的状态将是什么?

可运行吗?

不能被阻止,因为它在API中的描述是:

Thread state for a thread blocked waiting for a monitor lock.

当使用LockSupport.park()API时,我们不需要获取监视器锁,也不必像Object.wait()那样。

所以将成为RUNNABLE状态,对吗?

1 个答案:

答案 0 :(得分:0)

是的,如果线程已经启动。

LockSupport.unpark()

  

提供给定线程的许可

启用当前线程以进行线程调度。就是RUNNABLE的意思。