Thread.Yield メソッド

定義

呼び出し元のスレッドから、現在のプロセッサ上で実行する準備が整っている別のスレッドに実行を切り替えます。 実行の切り替え先のスレッドは、オペレーティング システムによって選択されます。

public:
 static bool Yield();
public static bool Yield ();
static member Yield : unit -> bool
Public Shared Function Yield () As Boolean

戻り値

オペレーティング システムによって実行が別のスレッドに切り替えられた場合は true。それ以外の場合は false

注釈

このメソッドが成功すると、スレッドの現在のタイム スライスの残りの部分が生成されます。 オペレーティング システムは、呼び出し元スレッドの優先度と実行できる他のスレッドの状態に従って、別のタイム スライスの呼び出しスレッドをスケジュールします。

Yielding は、呼び出し元のスレッドを実行しているプロセッサに限定されます。 オペレーティング システムは、そのプロセッサがアイドル状態であるか、優先度の低いスレッドを実行している場合でも、実行を別のプロセッサに切り替えるわけではありません。 現在のプロセッサで実行する準備ができている他のスレッドがない場合、オペレーティング システムは実行を生成せず、このメソッドは を返します false

このメソッドは、プラットフォーム呼び出しを使用してネイティブ Win32 関数を呼び出すのと SwitchToThread 同じです。 プラットフォーム呼び出しは、ホストが要求したカスタム スレッド動作をバイパスするため、プラットフォーム呼び出しを使用する代わりに メソッドを呼び出 Yield す必要があります。

適用対象