Classe tile_barrier
Sincroniza a execução de threads que estão em execução no grupo de threads (o bloco) usando métodos wait
. Somente o runtime pode instanciar essa classe.
Sintaxe
class tile_barrier;
Membros
Construtores públicos
Nome | Descrição |
---|---|
tile_barrier Constructor | Inicializa uma nova instância da classe tile_barrier . |
Métodos públicos
Nome | Descrição |
---|---|
wait | Instrui todos os threads no grupo de threads (bloco) a parar de executar até que todos os threads no bloco terminem de esperar. |
wait_with_all_memory_fence | Bloqueia a execução de todos os threads em um bloco até que todos os acessos à memória tenham sido concluídos e todos os threads no bloco tenham atingido essa chamada. |
wait_with_global_memory_fence | Bloqueia a execução de todos os threads em um bloco até que todos os acessos de memória globais tenham sido concluídos e todos os threads no bloco tenham atingido essa chamada. |
wait_with_tile_static_memory_fence | Bloqueia a execução de todos os threads em um bloco até que todos os acessos à memória tile_static tenham sido concluídos e todos os threads no bloco tenham atingido essa chamada. |
Hierarquia de herança
tile_barrier
Requisitos
Cabeçalho: amp.h
Namespace: Simultaneidade
tile_barrier Constructor
Inicializa uma nova instância da classe copiando uma existente.
Sintaxe
tile_barrier(
const tile_barrier& _Other ) restrict(amp,cpu);
Parâmetros
_Other
O objeto tile_barrier
a ser copiado.
wait
Instrui todos os threads no grupo de threads (bloco) a interromper a execução até que todos os threads no bloco terminem de esperar.
Sintaxe
void wait() const restrict(amp);
wait_with_all_memory_fence
Bloqueia a execução de todos os threads em um bloco até que todos os threads em um bloco tenham atingido essa chamada. Isso garante que todos os acessos de memória estejam visíveis para outros threads no bloco de thread e tenham sido executados na ordem do programa.
Sintaxe
void wait_with_all_memory_fence() const restrict(amp);
wait_with_global_memory_fence
Bloqueia a execução de todos os threads em um bloco até que todos os threads em um bloco tenham atingido essa chamada. Isso garante que todos os acessos de memória globais estejam visíveis para outros threads no bloco de threads e tenham sido executados na ordem do programa.
Sintaxe
void wait_with_global_memory_fence() const restrict(amp);
wait_with_tile_static_memory_fence
Bloqueia a execução de todos os threads em um bloco até que todos os threads em um bloco tenham atingido essa chamada. Isso garante que os acessos de memória tile_static
sejam visíveis para outros threads no bloco de thread e tenham sido executados na ordem do programa.
Sintaxe
void wait_with_tile_static_memory_fence() const restrict(amp);