暫停執行緒執行

執行緒可以暫停並繼續執行另一個執行緒。 當執行緒暫停時,它不會排程在處理器上的時間。

如果執行緒是以暫止狀態建立 (,且 CREATE_SUSPENDED旗標) ,則在另一個執行緒呼叫 ResumeThread 函式並具有暫止執行緒控制碼之前,它不會開始執行。 線上程開始執行之前,這很適合用來初始化執行緒的狀態。 在建立時暫停執行緒對於一次性同步處理很有用,因為這可確保暫停的執行緒會在您呼叫 ResumeThread時執行其程式碼的起點。

SuspendThread函式不適合用于執行緒同步處理,因為它不會控制執行緒執行暫停所在程式碼中的點。 此函式主要是設計供偵錯工具使用。

執行緒可以藉由呼叫 SleepSleepEx 函式暫時產生其執行,這特別適用于執行緒回應使用者互動的情況,因為它可能會順延強制時間夠長,讓使用者觀察其動作的結果。 在睡眠間隔期間,執行緒不會排程在處理器上的時間。

SwitchToThread函式類似于SleepSleepEx,但您無法指定間隔。 SwitchToThread 可讓執行緒放棄其時間配量。