[Python-de] Prozesse mit Thread beenden

Florian Lindner mailinglists at xgm.de
Di Nov 8 15:15:10 CET 2011


Am Samstag 05 November 2011, 21:00:26 schrieb Christopher Arndt:
> On 05.11.2011 10:44, Florian Lindner wrote:
> > Ok, das ist klar. Die Frage ist nur, wie merkt der Thread, dass sein
> > letztes Stündlein geschlagen hat? Kann ich also irgendwie eine Art
> > Signal Handler installieren, worin der Thread noch Aufräumarbeiten
> > erledigen kann oder muss das per Hand gemacht werden? Mit normalen Unix
> > Signals geht das ja nicht, soweit ich weiß.
> 
> Threads enden, wenn ihre run() Methode zurückkehrt.

Hallo,

ich sehe nicht, wie weit das mir weiterhilft.

Das Problem stehe ich eher so. Ich habe folgenden Aufrufbaum:

execute(): Methode (=Thread) im XML-RPC Server
-> mache_dies()
   -> mache_nochwas()
      -> proc = subprocess.Popen(...)

Wenn ich nun in execute() die Information bekomme, dass der Thread beendet 
wird, muss ich diese Information immer noch soweit nach unten reichen, dass 
proc.kill() aufgerufen werden kann. Es muss also über alle Aufrufebenen 
irgendwie ein Callback-Mechanismus vorhanden sein.

Sorry, wenn ich nicht so recht verstehe, was Du meinst... ;-)

Danke,

Florian


Mehr Informationen über die Mailingliste python-de