Dies ist die alte 4D Dokumentations-Website. Die neue und aktualisierte Dokumentation finden Sie unter developer.4d.com |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
KILL WORKER
|
KILL WORKER {( Prozess )} | ||||||||
Parameter | Typ | Beschreibung | ||||||
Prozess | Text, Lange Ganzzahl |
![]() |
Nummer oder Name des zu stoppenden Prozesses (stoppt ohne Angabe den aktuellen Prozess) | |||||
Der Befehl KILL WORKER sendet eine Nachricht an den Worker Prozess, mit dem in Prozess übergebenen Namen oder der Nummer, mit der Aufforderung, noch wartende Nachrichten zu ignorieren und die Ausführung nach Abschließen der aktuellen Aufgabe zu stoppen.
Dieser Befehl ist nur mit Worker Prozessen anwendbar. Weitere Informationen dazu finden Sie im Abschnitt Über Worker.
In Prozess übergeben Sie Name oder Nummer des Worker Prozesses, dessen Ausführung gestoppt werden soll. Gibt es keinen Worker mit dem angegebenen Prozessnamen oder der Prozessnummer, führt KILL WORKER nichts aus.
KILL WORKER ohne Parameter wird auf den aktuell laufenden Worker angewendet und entspricht deshalb KILL WORKER (aktueller Prozess).
Wird der Befehl in einem Worker aufgerufen, der nicht explizit mit dem Befehl CALL WORKER erstellt wurde (z.B. im Worker der Hauptanwendung), fordert er den Worker nur auf, seine Nachrichtenbox zu leeren.
Wird der Befehl CALL WORKER aufgerufen, um eine Meldung an einen Worker zu senden, der gerade von KILL WORKER gestoppt wurde, wird ein neuer Prozess gestartet. Um sicherzustellen, dass nur ein Prozess gleichzeitig für einen Worker läuft, startet der neue Prozess, nachdem der vorige beendet ist. Wird CALL WORKER dagegen von einem Worker aufgerufen, um sich selbst eine Meldung zu senden und wurde er gerade durch KILL WORKER gestoppt, führt der Befehl nichts aus.
Der folgende Code (z.B. über ein Formular ausgeführt) löst Beenden des Worker aus:
CALL WORKER(vWorkerName;"theWorker";"end")
Dazu wird in der Worker Methode (theWorker) folgender Code hinzugefügt:
//Methode theWorker
C_TEXT($1) //param
Case of
:($1="call") //der Worker wird aufgerufen
... //etwas ausführen
:($1="end") //der Worker erhält die Aufforderung, zu stoppen
KILL WORKER
End case
Produkt: 4D
Thema: Prozess (Kommunikation)
Nummer:
1390
Erstellt: 4D v15 R5
4D Programmiersprache ( 4D v20 R7)