Wie der Titel sagt, was ist der Unterschied zwischen diesen beiden Funktionen in ProcessProtocol-Klassen? Die Dokumentation ist ein bisschen spärlich wann sollte man statt einer anderen verwendet werden?
Vorzugsweise suche ich nach Anwendungsbeispielen, die das demonstrieren.
Ich denke, die Dokumentation ist in diesem Punkt etwas spärlich. Wenn kein solches Ticket existiert, können Sie ein Ticket einreichen, um die API-Dokumentation zu verbessern.
processExited
wird aufgerufen, wenn ein Prozess exited im formalen Prozessmanagement-Sinn ist, d. h. namens exit()
oder zurückgegeben von main()
.
Das ist jedoch nicht immer das, was Sie wollen. Manchmal erzeugt ein Prozess einen Subprozess, gibt seine stdin und stdout aus, delegiert die Verantwortung für die Erzeugung der Daten, die Sie (der launige Elternprozess in diesem Fall) wollen, und dann exit()
s, weil die Einrichtung abgeschlossen ist.
processEnded
wird aufgerufen, wenn ein Prozess sowohl als auch beendet hat und alle I / O-Operationen seiner verwalteten Dateideskriptoren ( stdin
, stdout
und childFDs
) abgeschlossen hat sind geschlossen. Wenn Sie etwas erzeugen, nur um seine Ausgabe zu lesen, ist dies die Benachrichtigung, die Sie wahrscheinlich interessieren.
Tags und Links twisted