Condividi tramite


Classe tile_barrier

Sincronizza l'esecuzione dei thread che girano all'interno del gruppo di thread (tile) utilizzando i metodi wait. Solo il runtime può creare un'istanza di questa classe.

Sintassi

class tile_barrier;

Membri

Costruttori pubblici

Nome Descrizione
tile_barrier Costruttore Inizializza una nuova istanza della classe tile_barrier.

Metodi pubblici

Nome Descrizione
aspettare Istruisce tutti i thread nel gruppo di thread (tile) di fermarsi fino a quando tutti i thread nel tile abbiano finito di attendere.
wait_with_all_memory_fence Blocca l'esecuzione di tutti i thread in un riquadro fino a quando non sono stati completati tutti gli accessi alla memoria e tutti i thread nel riquadro hanno raggiunto questa chiamata.
wait_with_global_memory_fence Blocca l'esecuzione di tutti i thread in un riquadro fino a quando non sono stati completati tutti gli accessi alla memoria globale e tutti i thread nel riquadro hanno raggiunto questa chiamata.
wait_with_tile_static_memory_fence (attendere_con_barriera_di_memoria_statica_della_quadrella) Blocca l'esecuzione di tutti i thread in un riquadro fino a quando non sono stati completati tutti gli tile_static accessi alla memoria e tutti i thread nel riquadro hanno raggiunto questa chiamata.

Gerarchia di ereditarietà

tile_barrier

Requisiti

Intestazione: amp.h

Spazio dei nomi: Concurrency

Costruttore tile_barrier

Inizializza una nuova istanza della classe copiando un'istanza esistente.

Sintassi

tile_barrier(
    const tile_barrier& _Other ) restrict(amp,cpu);

Parametri

_Altro
Oggetto tile_barrier da copiare.

attendere

Istruisce tutti i thread nel gruppo di thread (tile) di interrompere l'esecuzione fino a quando tutti i thread nel tile hanno terminato l'attesa.

Sintassi

void wait() const restrict(amp);

"wait_con_tutte_le_barriere_di_memoria"

Blocca l'esecuzione di tutti i thread in un riquadro finché tutti i thread in un riquadro non hanno raggiunto questa chiamata. Ciò garantisce che tutti gli accessi alla memoria siano visibili ad altri thread nel riquadro del thread e siano stati eseguiti nell'ordine di programma.

Sintassi

void wait_with_all_memory_fence() const restrict(amp);

attesa_con_barriera_di_memoria_globale

Blocca l'esecuzione di tutti i thread in un riquadro finché tutti i thread in un riquadro non hanno raggiunto questa chiamata. Ciò garantisce che tutti gli accessi alla memoria globale siano visibili ad altri thread nel riquadro del thread e siano stati eseguiti nell'ordine di programma.

Sintassi

void wait_with_global_memory_fence() const  restrict(amp);

attesa_con_sbarra_memoria_statica_piastrella

Blocca l'esecuzione di tutti i thread in un riquadro finché tutti i thread in un riquadro non hanno raggiunto questa chiamata. Ciò garantisce che gli accessi alla memoria tile_static siano visibili ad altri thread nella piastrella del thread e siano stati eseguiti nell'ordine del programma.

Sintassi

void wait_with_tile_static_memory_fence() const restrict(amp);

Vedi anche

Namespace Concurrency (C++ AMP)