CMultiLock 類別
代表多執行緒程式用來控制多個資源存取的存取控制機制。
class CMultiLock
成員
公用建構函式
名稱 |
描述 |
---|---|
建構 CMultiLock 物件。 |
公用方法
名稱 |
描述 |
---|---|
判斷陣列中的指定同步物件是否已鎖定。 |
|
在某些的等候同步處理物件。 |
|
釋放所有附屬的同步物件。 |
備註
CMultiLock 不具有基底類別。
若要使用同步類別 CSemaphore, CMutex和 CEvent,您可以建立等候的 CMultiLock 或 CSingleLock 物件並釋放同步處理物件。 請使用 CMultiLock ,當您有可能在特定時間使用的多個物件時。 當您在物件只需要一次時,請使用 CSingleLock 等候。
若要使用 CMultiLock 物件,請先建立同步處理的物件要等候。 接著,請在 10% 成員函式內的 CMultiLock 物件的建構函式在受控制資源的類別。 然後呼叫 鎖定 成員函式會判斷資源是否可用 (表示)。 如果是,則請繼續成員函式的其餘部分。 如果資源無法使用,請等候資源的一段指定的時間釋放或傳回失敗。 資源的使用完成後,請將呼叫 解除鎖定 函式是否要重複使用 CMultiLock 物件,允許 CMultiLock 被終結的物件。
CMultiLock 物件最有用處,因為它能回應的執行緒有大量的 CEvent 物件時。 建立包含所有 CEvent 指標的陣列,並呼叫 Lock。 這會讓執行緒等待,直到其中一個事件發出信號。
如需如何使用 CMultiLock 物件的詳細資訊,請參閱本文 多執行緒:如何使用同步類別。
繼承階層架構
CMultiLock
需求
Header: afxmt.h