Share via


Semaphore 類別

表示同步處理物件,控制可支援有限使用者數量的共用資源。

語法

class Semaphore : public HandleT<HandleTraits::SemaphoreTraits>;

成員

公用 Typedefs

名稱 描述
SyncLock 支援同步鎖定之類別的同義字。

公用建構函式

名稱 描述
Semaphore::Semaphore 初始化 Semaphore 類別的新執行個體。

公用方法

名稱 描述
號志::Lock 等候到目前物件或與指定控制碼相關聯的物件處於訊號狀態,或已經過指定的逾時間隔。

公用運算子

名稱 描述
Semaphore::operator= 將指定的控制碼從 Semaphore 物件移至目前的 Semaphore 物件。

繼承階層架構

Semaphore

需求

標頭: corewrappers.h

命名空間: Microsoft::WRL::Wrappers

號志::Lock

等候到目前物件或 Semaphore 與指定控制碼相關聯的物件處於訊號狀態,或已經過指定的逾時間隔。

SyncLock Lock(
   DWORD milliseconds = INFINITE
);

static SyncLock Lock(
   HANDLE h,
   DWORD milliseconds = INFINITE
);

參數

milliseconds
逾時間隔,以毫秒為單位。 預設值為 INFINITE,它會無限期等候。

小時
物件的控制碼 Semaphore

傳回值

進行 Details::SyncLockWithStatusT<HandleTraits::SemaphoreTraits>

Semaphore::operator=

將指定的控制碼從 Semaphore 物件移至目前的 Semaphore 物件。

Semaphore& operator=(
   _Inout_ Semaphore&& h
);

參數

小時
物件的右值參考 Semaphore

傳回值

目前 Semaphore 物件的參考。

Semaphore::Semaphore

初始化 Semaphore 類別的新執行個體。

explicit Semaphore(
   HANDLE h
);

WRL_NOTHROW Semaphore(
   _Inout_ Semaphore&& h
);

參數

小時
物件的控制碼或右值參考 Semaphore