Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Classe
Representa um tipo mutex. Objetos desse tipo podem ser usados para impor a exclusão mútua dentro de um programa.
Sintaxe
class mutex;
Membros
Destruidor/construtor público
| Nome | Descrição |
|---|---|
mutex |
Constrói um objeto mutex. |
~mutex |
Libera todos os recursos que foram usados pelo objeto mutex. |
Métodos públicos
| Nome | Descrição |
|---|---|
lock |
Bloqueia o thread de chamada até que ele tenha obtido a propriedade do mutex. |
native_handle |
Retorna o tipo específico à implementação que representa o identificador mutex. |
try_lock |
Tenta obter a propriedade do mutex sem o bloqueio. |
unlock |
Libera a propriedade do mutex. |
Requisitos
Cabeçalho: <mutex>
Namespace: std
lock
Bloqueia o thread de chamada até que ele tenha obtido a propriedade do mutex.
void lock();
Comentários
Se o thread de chamada já for o proprietário do mutex, o comportamento será indefinido.
Construtor
Constrói um objeto mutex que não está bloqueado.
Antes do Visual Studio 2022 17.10, a implementação desse construtor pela Microsoft não constexprera . Agora é constexpr.
mutex() noexcept;
Destruidor
Libera todos os recursos usados pelo objeto mutex.
~mutex();
Comentários
Se o objeto estiver bloqueado quando o destruidor for executado, o comportamento será indefinido.
native_handle
Retorna o tipo específico à implementação que representa o identificador mutex. O identificador mutex pode ser usado de maneiras específicas da implementação.
native_handle_type native_handle();
Valor de retorno
native_handle_type é definido como um Concurrency::critical_section *. É lançado como void *.
try_lock
Tenta obter a propriedade do mutex sem o bloqueio.
bool try_lock();
Valor retornado
true se o método obtiver a propriedade do mutex com êxito; caso contrário, false.
Comentários
Se o thread de chamada já for o proprietário do mutex, o comportamento será indefinido.
unlock
Libera a propriedade do mutex.
void unlock();
Comentários
Se o thread de chamada não for o proprietário de mutex, o comportamento será indefinido.