Partilhar via


sync_per_thread Classe

Descreve um filtro de sincronização que fornece um objeto de cache separado para cada thread.

Sintaxe

template <class Cache>
class sync_per_thread

Parâmetros

Cache
O tipo de cache associado ao filtro de sincronização. Pode ser cache_chunklist, cache_freelistou cache_suballoc.

Observações

Os alocadores que usam sync_per_thread podem comparar iguais, mesmo que os blocos alocados em um thread não possam ser desalocados de outro thread. Ao usar um desses alocadores, os blocos de memória alocados em um thread não devem ser tornados visíveis para outros threads. Na prática, isso significa que um contêiner que usa um desses alocadores só deve ser acessado por um único thread.

Funções de membro

Função de membro Descrição
alocar Aloca um bloco de memória.
desalocar Libera um número especificado de objetos do armazenamento começando em uma posição especificada.
é igual a Compara dois caches para igualdade.

Requerimentos

Cabeçalho:<Alocadores>

Espaço de nomes: stdext

sync_per_thread::alocar

Aloca um bloco de memória.

void *allocate(std::size_t count);

Parâmetros

contagem
O número de elementos na matriz a ser alocado.

Observações

A função member retorna o resultado de uma chamada para cache::allocate(count) no objeto de cache pertencente ao thread atual. Se nenhum objeto de cache tiver sido alocado para o thread atual, ele primeiro alocará um.

sync_per_thread::d eallocate

Libera um número especificado de objetos do armazenamento começando em uma posição especificada.

void deallocate(void* ptr, std::size_t count);

Parâmetros

ptr
Um ponteiro para o primeiro objeto a ser desalocado do armazenamento.

contagem
O número de objetos a serem desalocados do armazenamento.

Observações

A função de membro chama deallocate o objeto de cache pertencente ao thread atual. Se nenhum objeto de cache tiver sido alocado para o thread atual, ele primeiro alocará um.

sync_per_thread::iguais

Compara dois caches para igualdade.

bool equals(const sync<Cache>& Other) const;

Parâmetros

Cache
O objeto de cache do filtro de sincronização.

Outros
O objeto de cache a ser comparado para igualdade.

Valor de retorno

false se nenhum objeto de cache tiver sido alocado para este objeto ou para Outro no thread atual. Caso contrário, ele retorna o resultado da aplicação operator== aos dois objetos de cache.

Ver também

<Alocadores>