で作業項目をキューに入れましたThreadPoolが、処理するデータがない場合(からの読み取りBlockingQueue)、作業項目がブロックされたとします。キューが空で、キューに入る作業がなくなるThread.Interrupt場合、ブロッキングタスクを中断する場合はメソッドを呼び出す必要がありますが、?を使用して同じことを行うにはどうすればよいThreadPoolですか?
コードは次のようになります。
void Run()
{
try
{
while(true)
{
blockingQueue.Dequeue();
doSomething();
}
}
finally
{
countDownLatch.Signal();
}
}
この状況で最善を尽くすのは通常の方法を使用することですが、作業項目を中断する同等の方法Threadがあるかどうか疑問に思っています。ThreadPool