小编gue*_*418的帖子

如果所有线程都空闲,则停止工作

我有一些消费者线程,其中任何一个也可以充当生产者.我怎么知道他们什么时候完成了他们的工作?

class Worker extends Thread{
    void process(Task t){
        ...
        if(needsMoreWork(t)){
            queue.addAll(extractTasks(t));
        }
    }
    public void run(){
        while(isRunning){
            Task t = queue.take();//I need to finish somehow.
            process(t);
        }
    }
    ...
}
Run Code Online (Sandbox Code Playgroud)

java multithreading

0
推荐指数
1
解决办法
90
查看次数

标签 统计

java ×1

multithreading ×1