Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/342.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 等待执行线程模具的代码块_Java_Multithreading - Fatal编程技术网

Java 等待执行线程模具的代码块

Java 等待执行线程模具的代码块,java,multithreading,Java,Multithreading,我想要的只是一块代码,等待另一个线程死亡 如果此线程不是事件线程我相信这就是方法的用途: public final void join()引发InterruptedException 等待此线程死亡 java.util.concurrent.CountDownLatch可以在这里使用。据我所知,看起来您希望在某些线程死亡后执行一块代码,但不希望thread.join()阻止当前线程?然后在另一个线程中执行整个过程: new Thread() { public void run() {

我想要的只是一块代码,等待另一个线程死亡 如果此线程不是事件线程

我相信这就是方法的用途:

public final void join()引发InterruptedException

等待此线程死亡


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,它也将挂起我要挂起的代码块,直到该线程死亡