Java 等待执行线程模具的代码块
我想要的只是一块代码,等待另一个线程死亡 如果此线程不是事件线程我相信这就是方法的用途: public final void join()引发InterruptedException 等待此线程死亡Java 等待执行线程模具的代码块,java,multithreading,Java,Multithreading,我想要的只是一块代码,等待另一个线程死亡 如果此线程不是事件线程我相信这就是方法的用途: public final void join()引发InterruptedException 等待此线程死亡 java.util.concurrent.CountDownLatch可以在这里使用。据我所知,看起来您希望在某些线程死亡后执行一块代码,但不希望thread.join()阻止当前线程?然后在另一个线程中执行整个过程: new Thread() { public void run() {
java.util.concurrent.CountDownLatch
可以在这里使用。据我所知,看起来您希望在某些线程死亡后执行一块代码,但不希望thread.join()阻止当前线程?然后在另一个线程中执行整个过程:
new Thread() {
public void run() {
someThread.join(); // someThread is the thread that you're waiting to die
// your block of code
}
}.start();
这将在某些线程死亡后执行代码,但不会挂起当前线程。以及对象的wait()和notify()甚至BlockingQueue。但是,当有一个安全且一致的方法来执行所需的操作时,为什么要使用这些方法呢?CountDownLatch是一个选择,在这种情况下不是必需的。@sergey回答:我需要的是在线程死亡后调用函数,而不是挂起事件线程@Shengyuan CountDownLatch???plz记录example@Henaway:我在另一个问题上发布了一个示例:如果我在事件线程中使用join word,它也将挂起我要挂起的代码块,直到该线程死亡