Signale & Ereignisse – Prozesse, die aufeinander hören
Manchmal hängt ein Ablauf davon ab, was ein anderer Ablauf erledigt hat. Genau dafür gibt es Signale. Ein Prozess sendet an einem bestimmten Punkt ein Signal mit einem Namen – und ein anderer Prozess kann auf genau dieses Signal warten. So koordinieren sich Workflows über Prozessgrenzen hinweg, ohne dass Sie sie direkt miteinander verdrahten müssen.
Typisch ist das Warten auf einen Folgeprozess: Der Hauptprozess pausiert an einem Schritt, bis der ausgelöste Folgeprozess sein Ergebnis als Signal zurückgibt. Oder zwei unabhängige Workflows tauschen sich aus – etwa wenn ein Vorgang erst fortgesetzt wird, wenn eine Freigabe aus einem anderen Prozess eingegangen ist. Sie entscheiden dabei, ob gewartet wird, bis das erste erwartete Signal eintrifft oder bis alle da sind.
Prozesse, die aufeinander hören
Mit Signalen und Ereignissen verbindet linqi Prozesse über ihre Grenzen hinweg. Ein Prozess sendet an einem Schritt ein benanntes Signal – etwa wenn er abgeschlossen ist oder ein bestimmter Zustand erreicht wurde. Ein anderer Prozess wartet an einem Wartschritt auf genau dieses Signal und läuft erst fort, wenn es eintrifft. Sie können auf ein einzelnes Signal warten oder auf mehrere zugleich und dabei festlegen, ob der Ablauf nach dem ersten erwarteten Signal weitergeht oder erst, wenn alle da sind. Ebenfalls entscheidbar: ob bereits gesendete Signale mitgezählt werden oder nur neue. So lässt sich aus getrennten Workflows ein sauber orchestrierter Gesamtprozess machen – vom Hauptprozess, der auf seinen Folgeprozess wartet, bis zu zwei unabhängig laufenden Abläufen, die sich austauschen.
So tauschen sich Prozesse Signale aus
- Signal senden:
Ein Prozess sendet an einem Schritt ein benanntes Signal. Das geschieht automatisch im Lauf – etwa wenn ein Schritt abgeschlossen ist oder eine Bedingung erfüllt wurde. - Signal abonnieren:
Ein anderer Prozess wartet an einem Wartschritt auf eines oder mehrere Signale nach Name. Er bleibt pausiert, bis die Wartebedingung erfüllt ist. - Erstes oder alle Signale:
Sie legen fest, ob der Ablauf nach dem ersten erwarteten Signal weiterläuft oder erst, wenn alle erwarteten Signale eingetroffen sind. - Neue oder zurückliegende:
Sie bestimmen, ob auch Signale berücksichtigt werden, die bereits gesendet wurden – oder ob der Ablauf nur auf neue Signale wartet.
So entstehen lückenlose Verknüpfungen zwischen Prozessen: Folgeprozesse, parallele Abläufe und getrennte Workflows greifen ineinander, ohne dass Sie sie in einen einzigen großen Prozess pressen müssen.
Häufige Fragen zu Signalen & Ereignissen
Was ist ein Signal?
Ein Signal ist ein benanntes Ereignis, das ein Prozess sendet und auf das andere Prozesse warten können. Es trägt einen Namen und einen Zeitpunkt – der sendende und der wartende Prozess müssen sich dabei nicht kennen.
Kann ein Prozess auf mehrere Signale warten?
Ja. Sie legen mehrere Signale fest und entscheiden, ob der Ablauf nach dem ersten erwarteten Signal weiterläuft oder erst, wenn alle erwarteten Signale eingetroffen sind.
Ist das Warten über Prozessgrenzen hinweg möglich?
Ja – das ist der Kern. Prozesse tauschen Signale pro Mandant aus, auch wenn sie voneinander unabhängig sind. Typisch ist ein Hauptprozess, der auf ein Signal seines Folgeprozesses wartet.
Wird auch auf bereits gesendete Signale gewartet?
Sie bestimmen das über den Suchtyp: Entweder werden auch Signale berücksichtigt, die vor dem Warten gesendet wurden, oder der Ablauf wartet nur auf neue Signale.
