建議使用 Visual Studio 2017

mutex 類別 (STL)

 

如需 Visual Studio 2017 的最新文件請參閱 Visual Studio 2017 文件

代表mutex 類型。 這個類型的物件可以用來強制程式內的互斥。

class mutex;

公用建構函式

名稱說明
mutex:: mutex 建構函式建構 mutex 物件。
mutex:: ~ mutex 解構函式釋放 mutex 物件使用的所有資源。

公用方法

名稱說明
mutex:: lock 方法封鎖呼叫的執行緒,直到執行緒取得 mutex 的擁有權。
mutex:: native_handle 方法傳回表示 mutex 控制代碼的實作特定類型。
mutex:: try_lock 方法嘗試在不造成封鎖的情況下,取得 mutex 的擁有權。
mutex:: unlock 方法釋放 mutex 的擁有權。

標頭︰ mutex

命名空間: std

封鎖呼叫的執行緒,直到執行緒取得 mutex 的擁有權。

void lock();

備註

如果呼叫的執行緒已經擁有 mutex,則行為是未定義的。

建構mutex未鎖定的物件。

constexpr mutex() noexcept;

釋放任何資源,可供mutex物件。

~mutex();

備註

如果執行解構函式時物件已鎖定,則行為是未定義的。

傳回表示 mutex 控制代碼的實作特定類型。 Mutex 控制代碼可用於實作特定的方式。

native_handle_type native_handle();

傳回值

native_handle_type定義為Concurrency::critical_section *,就會轉換為void *

嘗試在不造成封鎖的情況下,取得 mutex 的擁有權。

bool try_lock();

傳回值

如果方法成功取得 true 的擁有權,就是 mutex,否則為 false

備註

如果呼叫的執行緒已經擁有 mutex,則行為是未定義的。

釋放 mutex 的擁有權。

void unlock();

備註

如果呼叫的執行緒未擁有 mutex,則行為是未定義的。

標頭檔參考
<>>

顯示: