Javaスレッドの状態がブロックされ、待機の違い
BLOCKED状態
シーンのスレッドがBLOCKED状態になっています。
現在のスレッドは、このような同期コード・ブロックを実行したり、同期した標識を使用して待っていると、モニターロックを待機します。
循環型オブジェクト待ち法と呼ばれる同期ブロックでは
、以下のいくつかを示しています样例
。
synchronized(this)
{
while (flag)
{
obj.wait();
}
// some other code
}
WAINTING状態
シーンのスレッドが待ち状態になっています。
オブジェクトのメソッドは、オブジェクトの待機を呼び出しますが、タイムアウト値を指定しないでください。
コールThreadオブジェクトメソッドに参加しますが、タイムアウト値を指定していません。
コールパーク方法のLockSupportオブジェクト。
TIME_WAINTING状態
シーンのスレッドがTIMED_WAITING状態です。
メソッド呼び出しのThread.sleep。
waitメソッドのオブジェクトのオブジェクト呼び出し、タイムアウト値を指定します。
コールは、Threadオブジェクトのメソッドに参加するタイムアウト値を指定します。
parkNanos方法LockSupportオブジェクトを呼び出します。
parkUntil方法LockSupportオブジェクトを呼び出します。