KlassenKlassenKlassenKlassen | | | | Operatoren

Wählen Sie oben rechts eine andere Programmiersprache aus.

Wählen Sie oben rechts eine andere Programmiersprache aus.

Wählen Sie oben rechts eine andere Programmiersprache aus.

Wählen Sie oben rechts eine andere Programmiersprache aus.

Wählen Sie oben rechts eine andere Programmiersprache aus.

par_joinpar_joinParJoinpar_joinParJoinParJoin (Operator)

Name

par_joinpar_joinParJoinpar_joinParJoinParJoin — Wartet auf Unterthreads die mit Hilfe der par_start Kennzeichnung am Anfang einer Programmzeile gestartet wurden.

Signatur

par_join( : : ThreadID : )

Herror par_join(const Hlong ThreadID)

Herror T_par_join(const Htuple ThreadID)

Herror par_join(const HTuple& ThreadID)

void ParJoin(const HTuple& ThreadID)

void HOperatorSetX.ParJoin([in] VARIANT ThreadID)

static void HOperatorSet.ParJoin(HTuple threadID)

Beschreibung

Der Operator par_joinpar_joinParJoinpar_joinParJoinParJoin erlaubt es, auf Prozeduren und Operatoren zu warten, die mit Hilfe von par_start in einem separaten Unterthread parallel zur aufrufenden Prozedur gestartet wurden. Es wird auf die Unterthreads gewartet, deren Thread-IDs als Tupel im Parameter ThreadIDThreadIDThreadIDThreadIDThreadIDthreadID übergeben wurden.

Achtung: par_start ist kein eigener Operator, sondern lediglich ein Kennzeichner, der dem eigentlichen Prozeduraufruf in der gleichen Programmzeile vorangestellt wird: par_start <ThreadID> : gefolgt von dem eigentlichen Aufruf.

Parameter

ThreadIDThreadIDThreadIDThreadIDThreadIDthreadID (input_control)  thread_id(-array) HTupleHTuple, HTupleVARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong) (Hlong)

IDs der Unterthreads, auf die gewartet werden soll.

Beispiel (HDevelop)

* start two procedures in separate sub threads
par_start <ThreadID1> : producer_proc()
par_start <ThreadID2> : consumer_proc()
* wait until both procedures have finished
par_join ([ThreadID1, ThreadID2])

Ergebnis

Sind die Parameterwerte korrekt, dann liefert par_joinpar_joinParJoinpar_joinParJoinParJoin den Wert 2 (H_MSG_TRUE). Andernfalls wird eine Fehlerbehandlung durchgeführt und ein Fehlercode zurückgeliefert.

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren