IHostCrst::SetSpinCount 方法
為目前的 IHostCrst 執行個體設定微調計數。
HRESULT SetSpinCount (
[in] DWORD dwSpinCount
);
參數
- dwSpinCount
[in] 目前 IHostCrst 執行個體的新微調計數。
傳回值
HRESULT |
描述 |
---|---|
S_OK |
SetSpinCount 已成功傳回。 |
HOST_E_CLRNOTAVAILABLE |
Common Language Runtime (CLR) 尚未載入至處理序中,或者此 CLR 目前的狀態無法執行 Managed 程式碼或成功處理呼叫。 |
HOST_E_TIMEOUT |
呼叫已逾時。 |
HOST_E_NOT_OWNER |
呼叫端不具備鎖定功能。 |
HOST_E_ABANDONED |
已封鎖執行緒或 Fiber 在等候事件時,該事件已遭取消。 |
E_FAIL |
發生未知的重大錯誤。 當方法傳回 E_FAIL 時,便無法在處理序內使用 CLR。 對裝載方法的後續呼叫會傳回 HOST_E_CLRNOTAVAILABLE。 |
備註
在多處理器的系統上,如果無法使用目前的 IHostCrst 執行個體所表示的關鍵區段,則呼叫執行緒會先微調 dwSpinCount 次後,再呼叫號誌上與此關鍵區段相關聯的 IHostSemaphore::Wait。 如果在微調作業期間,關鍵區段變成可用,則呼叫執行緒將會避開等候作業。
dwSpinCount 的用法與 Win32 InitializeCriticalSectionAndSpinCount 函式中同名的參數用法相同。
需求
**平台:**請參閱 .NET Framework 系統需求。
**標頭:**MSCorEE.h
程式庫:包含做為 MSCorEE.dll 中的資源
**.NET Framework 版本:**4、3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0