InterruptedException
待機中の対応はCountDownLatch.wait
?
他のすべてのスレッドが終了するのを確実CountDownLatch.wait
に待機する必要がありますが、待機中に例外がスローされる場合は、どのように対処すればよいですか?
InterruptedException
待機中の対応はCountDownLatch.wait
?
他のすべてのスレッドが終了するのを確実CountDownLatch.wait
に待機する必要がありますが、待機中に例外がスローされる場合は、どのように対処すればよいですか?
まず、メソッドはawait()
であり、 ではありませんwait()
。wait()
は java.lang.Object のメソッドで、まったく異なることを行います。
latch.await()
別のスレッドから、ブロックされているスレッドを(を呼び出して)中断することを決定しない限り、InterruptedException は発生しませんthread.interrupt()
。また、スレッドを中断することにしたので、スレッドが中断されたときに何をすべきかを知っておく必要があります。通常、実行中のスレッドをできるだけ早く終了させたい場合は、スレッドを中断して実行を停止します。