Compartilhar via


Classe concurrent_unordered_map

A classe de concurrent_unordered_map é um contêiner protegido contra simultaneidade que controla uma sequência de variação dos elementos de tipo std::pair<const _Key_type, _Element_type>. A sequência é representada em uma forma que permite acréscimo protegido contra simultaneidade, acesso de elemento, acesso de iterador, e operações de passagem de iterador.

template <
   typename _Key_type,
   typename _Element_type,
   typename _Hasher = std::tr1::hash<_Key_type>,
   typename _Key_equality = std::equal_to<_Key_type>,
   typename _Allocator_type = std::allocator<std::pair<const _Key_type,
   _Element_type> >
>
, typename _Key_equality = std::equal_to<_Key_type>, typename _Allocator_type = std::allocator<std::pair<const _Key_type, _Element_type> > > class concurrent_unordered_map : public details::_Concurrent_hash< details::_Concurrent_unordered_map_traits<_Key_type, _Element_type, details::_Hash_compare<_Key_type, _Hasher, _Key_equality>, _Allocator_type, false> >;

Parâmetros

  • _Key_type
    O tipo principal.

  • _Element_type
    O tipo mapeado.

  • _Hasher
    O tipo de objeto da função hash. Esse argumento é opcional e o valor padrão é std::tr1::hash<_Key_type**>**.

  • _Key_equality
    O tipo de objeto da função de comparação de igualdade. Esse argumento é opcional e o valor padrão é std::equal_to<_Key_type**>**.

  • _Allocator_type
    O tipo que representa o objeto armazenado do distribuidor que encapsula detalhes sobre a alocação e a desalocação de memória para o mapa simultâneo não ordenado. Esse argumento é opcional e o valor padrão é std::allocator<std::pair<_Key_type, _Element_type**>>**.

Membros

Typedefs Públicas

Nome

Descrição

allocator_type

O tipo de um distribuidor para gerenciar o armazenamento.

const_iterator

O tipo de um iterador de constante para a sequência controlada.

const_local_iterator

O tipo de um iterador de compartimento de constante para a sequência controlada.

const_pointer

O tipo de um ponteiro constante para um elemento.

const_reference

O tipo de uma referência constante para um elemento.

difference_type

O tipo de uma distância assinada entre dois elementos.

hasher

O tipo da função hash.

iterator

O tipo de um iterador para a sequência controlada.

key_equal

O tipo da função de comparação.

key_type

O tipo de uma chave classificação.

local_iterator

O tipo de um iterador de compartimento de memória para a sequência controlada.

mapped_type

O tipo de um valor mapeado associado com cada chave.

pointer

O tipo de um ponteiro para um elemento.

reference

O tipo de uma referência para um elemento.

size_type

O tipo de uma distância não assinada entre dois elementos.

value_type

O tipo de um elemento.

Construtores Públicos

Nome

Descrição

Construtor concurrent_unordered_map::concurrent_unordered_map

Sobrecarregado. Constrói um mapa simultâneo não ordenado.

Métodos Públicos

Nome

Descrição

Método concurrent_unordered_map::at

Sobrecarregado. Localiza um elemento em concurrent_unordered_map com um valor de chave especificado. Este método não é seguro em simultaneidade.

Método concurrent_unordered_map::hash_function

Obtém o objeto armazenado da função hash.

Método concurrent_unordered_map::insert

Sobrecarregado. Adiciona elementos ao objeto concurrent_unordered_map.

Método concurrent_unordered_map::key_eq

Obtém o objeto armazenado da função de comparação de igualdade.

Método concurrent_unordered_map::swap

Alterna o conteúdo de dois objetos de concurrent_unordered_map . Este método não é seguro em simultaneidade.

Método concurrent_unordered_map::unsafe_erase

Sobrecarregado. Remove os elementos de concurrent_unordered_map em posições especificadas. Este método não é seguro em simultaneidade.

Operadores Públicos

Nome

Descrição

Operador concurrent_unordered_map::operator[]

Sobrecarregado. Localiza ou insere um elemento com a chave especificada. Este método não é seguro em simultaneidade.

Operador concurrent_unordered_map::operator=

Sobrecarregado. Atribui o conteúdo de outro objeto concurrent_unordered_map nesse. Este método não é seguro em simultaneidade.

Comentários

Para obter informações detalhadas sobre a classe concurrent_unordered_map, consulte Contêineres e objetos em paralelo.

Hierarquia de Herança

_Traits

_Concurrent_hash

concurrent_unordered_map

Requisitos

Cabeçalho: concurrent_unordered_map.h

Namespace: simultaneidade

Consulte também

Referência

Namespace Concurrency

Conceitos

Contêineres e objetos em paralelo