while() ループとブロッキング メソッドを組み合わせると問題が発生します。見やすくするために、while(true) + エスケープ条件を使用します。
while(true)
{
//this is my blocking method
BlockingMethod();
//do other things here
//escape condition to get out of the loop
if(escape_condition) { break; }
}
私の懸念は、スレッドが while() ループ内に入ると、ブロッキング メソッドでスタックし、抜け出すためのエスケープ条件に到達しないことです。どうすればこれに対処できますか?
また、私のコードはこれと同等だと思いますが、正しいですか?
while(!escape_condition)
{
//this is my blocking method
BlockingMethod();
//do other things here
}
それとも入口条件を満たしたブロッキング方式で糸が引っかかって出てこないのでしょうか?(ループ内にエスケープ条件を実装する必要があります。)