mutex class (Standardowa biblioteka C++)

Reprezentuje typ mutexu. Obiekty tego typu mogą służyć do wymuszania wzajemnego wykluczania w programie.

Składnia

class mutex;

Członkowie

Konstruktor publiczny/destruktor

Nazwa/nazwisko opis
mutex mutex Tworzy obiekt.
~mutex Zwalnia wszystkie zasoby, które były używane przez mutex obiekt.

Metody publiczne

Nazwa/nazwisko opis
lock Blokuje wątek wywołujący do momentu uzyskania własności wątku mutex.
native_handle Zwraca typ specyficzny dla implementacji reprezentujący uchwyt mutex.
try_lock Próbuje uzyskać własność obiektu mutex bez blokowania.
unlock Zwalnia własność obiektu mutex.

Wymagania

Nagłówka:<mutex>

Obszaru nazw:std

lock

Blokuje wątek wywołujący do momentu uzyskania własności wątku mutex.

void lock();

Uwagi

Jeśli wątek wywołujący jest już właścicielem mutex, zachowanie jest niezdefiniowane.

Konstruktor

mutex Tworzy obiekt, który nie jest zablokowany.
Implementacja tego konstruktora firmy Microsoft nie constexprjest .

mutex() noexcept;

Destruktor

Zwalnia wszystkie zasoby, które są używane przez mutex obiekt.

~mutex();

Uwagi

Jeśli obiekt jest zablokowany po uruchomieniu destruktora, zachowanie jest niezdefiniowane.

native_handle

Zwraca typ specyficzny dla implementacji reprezentujący uchwyt mutex. Uchwyt mutex może być używany w sposób specyficzny dla implementacji.

native_handle_type native_handle();

Wartość zwracana

native_handle_type element jest definiowany Concurrency::critical_section * jako rzutowanie jako void *.

try_lock

Próbuje uzyskać własność obiektu mutex bez blokowania.

bool try_lock();

Wartość zwracana

true jeśli metoda pomyślnie uzyskuje własność mutex; w przeciwnym razie false, .

Uwagi

Jeśli wątek wywołujący jest już właścicielem mutex, zachowanie jest niezdefiniowane.

unlock

Zwalnia własność obiektu mutex.

void unlock();

Uwagi

Jeśli wątek wywołujący nie jest właścicielem mutex, zachowanie jest niezdefiniowane.

Zobacz też

Odwołanie do plików nagłówka
<mutex>