par_join
— Wartet auf Unterthreads die mit Hilfe der par_start
Kennzeichnung
am Anfang einer Programmzeile gestartet wurden.
par_join( : : ThreadID : )
Der Operator par_join
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 ThreadID
ü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.
ThreadID
(input_control) thread_id(-array) →
(integer)
IDs der Unterthreads, auf die gewartet werden soll.
* 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])
Sind die Parameterwerte korrekt, dann liefert
par_join
den Wert 2 (H_MSG_TRUE).
Andernfalls wird eine Fehlerbehandlung durchgeführt und ein Fehlercode
zurückgeliefert.
Foundation