Partager via


tile_barrier, classe

Synchronise l’exécution de threads qui s’exécutent dans le groupe de threads (la vignette) à l’aide wait de méthodes. Seul le runtime peut instancier cette classe.

Syntaxe

class tile_barrier;

Membres

Constructeurs publics

Nom Description
constructeur tile_barrier Initialise une nouvelle instance de la classe tile_barrier.

Méthodes publiques

Nom Description
wait Indique à tous les threads du groupe de threads (vignette) d’arrêter l’exécution jusqu’à ce que tous les threads de la vignette aient terminé d’attendre.
wait_with_all_memory_fence Bloque l’exécution de tous les threads d’une vignette jusqu’à ce que tous les accès à la mémoire soient terminés et que tous les threads de la vignette aient atteint cet appel.
wait_with_global_memory_fence Bloque l’exécution de tous les threads d’une vignette jusqu’à ce que tous les accès à la mémoire globale soient terminés et que tous les threads de la vignette aient atteint cet appel.
wait_with_tile_static_memory_fence Bloque l’exécution de tous les threads d’une vignette jusqu’à ce que tous les tile_static accès à la mémoire soient terminés et que tous les threads de la vignette aient atteint cet appel.

Hiérarchie d'héritage

tile_barrier

Spécifications

En-tête : amp.h

Espace de noms : Concurrency

constructeur tile_barrier

Initialise une nouvelle instance de la classe en copiant une instance existante.

Syntaxe

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

Paramètres

_Autre
Objet tile_barrier à copier.

wait

Indique à tous les threads du groupe de threads (vignette) d’arrêter l’exécution jusqu’à ce que tous les threads de la vignette aient terminé d’attendre.

Syntaxe

void wait() const restrict(amp);

wait_with_all_memory_fence

Bloque l’exécution de tous les threads d’une vignette jusqu’à ce que tous les threads d’une vignette aient atteint cet appel. Cela garantit que tous les accès à la mémoire sont visibles par d’autres threads dans la vignette de thread et qu’ils ont été exécutés dans l’ordre du programme.

Syntaxe

void wait_with_all_memory_fence() const restrict(amp);

wait_with_global_memory_fence

Bloque l’exécution de tous les threads d’une vignette jusqu’à ce que tous les threads d’une vignette aient atteint cet appel. Cela garantit que tous les accès à la mémoire globale sont visibles par d’autres threads de la vignette de thread et qu’ils ont été exécutés dans l’ordre du programme.

Syntaxe

void wait_with_global_memory_fence() const  restrict(amp);

wait_with_tile_static_memory_fence

Bloque l’exécution de tous les threads d’une vignette jusqu’à ce que tous les threads d’une vignette aient atteint cet appel. Cela garantit que tile_static les accès à la mémoire sont visibles par d’autres threads de la vignette de thread et qu’ils ont été exécutés dans l’ordre du programme.

Syntaxe

void wait_with_tile_static_memory_fence() const restrict(amp);

Voir aussi

Concurrency, espace de noms (C++ AMP)