Freigeben über


tile_barrier-Klasse

Synchronisiert die Ausführung von Threads, die in der Threadgruppe (die Kachel) mit wait-Methoden ausgeführt werden. Nur die Laufzeit kann diese Klasse instanziieren.

Syntax

class tile_barrier;

Member

Öffentliche Konstruktoren

Name Beschreibung
tile_barrier-Konstruktor Initialisiert eine neue Instanz der tile_barrier-Klasse.

Öffentliche Methoden

Name Beschreibung
wait Weist alle Threads in der Threadgruppe (Kachel) an, die Ausführung zu beenden, bis alle Threads in der Kachel den Wartevorgang beendet haben.
wait_with_all_memory_fence Blockiert die Ausführung aller Threads in einer Kachel, bis alle -Speicherzugriffe abgeschlossen sind und alle Threads in der Kachel diesen Aufruf erreicht haben.
wait_with_global_memory_fence Blockiert die Ausführung aller Threads in einer Kachel, bis alle globalen Speicherzugriffe abgeschlossen sind und alle Threads in der Kachel diesen Aufruf erreicht haben.
wait_with_tile_static_memory_fence Blockiert die Ausführung aller Threads in einer Kachel, bis alle tile_static-Speicherzugriffe abgeschlossen sind und alle Threads in der Kachel diesen Aufruf erreicht haben.

Vererbungshierarchie

tile_barrier

Anforderungen

Header: amp.h

Namespace: Parallelität

tile_barrier-Konstruktor

Initialisiert eine neue Instanz der Klasse, indem eine vorhandene kopiert wird.

Syntax

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

Parameter

_Other
Das zu kopierende tile_barrier-Objekt.

wait

Weist alle Threads in der Threadgruppe (Kachel) an, die Ausführung zu beenden, bis alle Threads in der Kachel warten.

Syntax

void wait() const restrict(amp);

wait_with_all_memory_fence

Blockiert die Ausführung aller Threads in einer Kachel, bis alle Threads in einer Kachel diesen Aufruf erreicht haben. Dadurch wird sichergestellt, dass alle Speicherzugriffe für andere Threads in der Threadkachel sichtbar sind und in der Programmreihenfolge ausgeführt wurden.

Syntax

void wait_with_all_memory_fence() const restrict(amp);

wait_with_global_memory_fence

Blockiert die Ausführung aller Threads in einer Kachel, bis alle Threads in einer Kachel diesen Aufruf erreicht haben. Dadurch wird sichergestellt, dass alle globalen Speicherzugriffe für andere Threads in der Threadkachel sichtbar sind und in der Programmreihenfolge ausgeführt wurden.

Syntax

void wait_with_global_memory_fence() const  restrict(amp);

wait_with_tile_static_memory_fence

Blockiert die Ausführung aller Threads in einer Kachel, bis alle Threads in einer Kachel diesen Aufruf erreicht haben. Dadurch wird sichergestellt, dass tile_static Speicherzugriffe für andere Threads in der Threadkachel sichtbar sind und in der Programmreihenfolge ausgeführt wurden.

Syntax

void wait_with_tile_static_memory_fence() const restrict(amp);

Siehe auch

Concurrency-Namespace (C++ AMP)