检查Java线程是否正在产生

时间:2017-01-03 09:29:44

标签: java multithreading concurrency deadlock

我正在编写一个自定义的Java调度程序,它根据优先级策略调度线程(在调度期间设置和修改优先级)。

但是,对于Thread.yield(),调度程序可能会遇到死锁。例如,t1正在调用Thread.yield()并放弃CPU。但由于t1仍然处于RUNNABLE状态,我的调度程序将继续尝试安排t1并阻止其他人。

我正在寻找一些方法来了解一个线程是否“让步”,以便调度程序可以让另一个线程运行。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

Thread.currentThread()!= threadInQuestion