Javaスレッドの状態がブロックされ、待機の違い

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オブジェクトを呼び出します。

公開された47元の記事 ウォンの賞賛8 ビュー30000 +

おすすめ

転載: blog.csdn.net/nanchengyu/article/details/104895669