Thread.Yield 方法

定義

造成呼叫執行緒執行目前處理器上已就緒可執行的其他執行緒。 作業系統會選擇要執行的執行緒。

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

傳回

如果作業系統切換為執行其他執行緒,則為 true,否則為 false

備註

如果此方法成功,則會產生執行緒目前時間配量的其餘部分。 作業系統會根據其優先順序和可供執行之其他執行緒的狀態,排程另一個時間配量的呼叫執行緒。

產生僅限於執行呼叫執行緒的處理器。 即使該處理器處於閒置狀態或執行較低優先順序的執行緒,作業系統也不會切換執行至另一個處理器。 如果沒有其他執行緒準備好在目前的處理器上執行,作業系統不會產生執行,而且這個方法會傳 false 回 。

這個方法相當於使用平台叫用來呼叫原生 Win32 SwitchToThread 函式。 您應該呼叫 Yield 方法,而不是使用平台叫用,因為平台叫用會略過主機所要求的任何自訂執行緒行為。

適用於