标签: java concurrency
我有一种困惑。我在某处读到Thread.yield()方法导致当前正在运行的线程暂停,并有机会保留“相同优先级”的线程。
Thread.yield()
现在始终执行相同的优先级线程,或者也可以执行更高优先级的线程。如果假设当前正在运行的线程对某个对象有一些锁定,那么在执行yeild方法后它会锁定它吗?
答案 0 :(得分:3)
当您调用Thread.yield()时,当前线程暂停并允许调度程序运行不同的线程。优先级由调度程序管理。
不,当然不是 - 你不释放任何锁。这样做会破坏同步。