IHostSyncManager::CreateSemaphore 方法
為 Common Language Runtime (CLR) 建立 IHostSemaphore 物件,以作為等候事件的旗號。
語法
HRESULT CreateSemaphore (
[in] DWORD dwInitial,
[in] DWORD dwMax,
[out] IHostSemaphore **ppSemaphore
);
參數
dwInitial
[in] ppSemaphore
的初始計數。
dwMax
[in] ppSemaphore
的最大計數。
ppSemaphore
[out] IHostSemaphore
執行個體的位址指標,如果無法建立旗號,則為 null。
傳回值
HRESULT | 描述 |
---|---|
S_OK | CreateSemaphore 已成功傳回。 |
HOST_E_CLRNOTAVAILABLE | CLR 尚未載入處理序,或 CLR 處於無法執行受控程式碼或成功處理呼叫的狀態。 |
HOST_E_TIMEOUT | 呼叫逾時。 |
HOST_E_NOT_OWNER | 呼叫端未擁有鎖定。 |
HOST_E_ABANDONED | 封鎖的執行緒或 Fiber 在其上等候時,事件遭到取消。 |
E_FAIL | 發生未知的重大失敗。 如果方法傳回 E_FAIL,則 CLR 就無法再用於處理序。 後續對裝載方法發出的呼叫會傳回 HOST_E_CLRNOTAVAILABLE。 |
E_OUTOFMEMORY | 沒有足夠的記憶體可用來建立要求的事件物件。 |
備註
CreateSemaphore
會鏡像處理具有相同名稱的 Win32 函式。 dwInitial
和 dwMax
參數會分別針對旗號計數使用與 Win32 lInitialCount
和 lMaximumCount
參數相同的語意。 dwInitial
必須在零和 dwMax
之間 (包含頭尾)。 dwMax
必須大於零。
規格需求
平台:請參閱系統需求。
標題: MSCorEE.h
程式庫:包含作為 MSCorEE.dll 中的資源
.NET Framework版本:自 2.0 起提供