[Python-de] subprocess mit callback
Alexander Schlarb
alexander255 at lavabit.com
Mo Jun 20 21:17:22 CEST 2011
Er sagt bufsize must be integer
dh: Du musst einen Integer anstelle eines Strings übergeben (=keine
Anführungszeichen!)
common.popen_callback(cb, ["sleep", 10])
-----------------------------------^
-----Original Message-----
From: Florian Lindner <mailinglists at xgm.de>
Reply-to: Die Deutsche Python Mailingliste <python-de at python.org>
To: python-de at python.org
Subject: [Python-de] subprocess mit callback
Date: Mon, 20 Jun 2011 20:46:14 +0200
Hallo,
ich würde gerne, ein subprocess Popen ein Prozeß aufrufen und mich
benachrichtigen lassen, wenn dieser fertig ist. Da habe ich auch einen Tipp
gefunden:
http://stackoverflow.com/questions/2581817/python-subprocess-callback-when-cmd-
exits
mit modifizierten Namen schaut das so aus:
def popen_callback(on_exit, popen_args):
def threaded_run(on_exit, popen_args):
print popen_args
proc = subprocess.Popen(*popen_args)
proc.wait()
on_exit()
return
thread = threading.Thread(target=threaded_run, args=(on_exit, popen_args))
thread.start()
return thread
Nur habe ich leider Probleme das aufzurufen:
In [29]: common.popen_callback(cb, ["sleep", "10"])
['sleep', '10']
Out[29]: <Thread(Thread-12, started 140538833995520)>
Exception in thread Thread-12:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 552, in __bootstrap_inner
self.run()
File "/usr/lib/python2.7/threading.py", line 505, in run
self.__target(*self.__args, **self.__kwargs)
File "common.py", line 21, in threaded_run
proc = subprocess.Popen(*popen_args)
File "/usr/lib/python2.7/subprocess.py", line 629, in __init__
raise TypeError("bufsize must be an integer")
TypeError: bufsize must be an integer
cb ist meine callback funktion.
Ich nehme mal an, er interpretiert die "10" als das zweite Argument für Popen.
Eine Reihe von anderen Methoden führte leider auch nicht zum Erfolg. Auch auf
die Gefahr hin, mich hier lächerlich zu machen: Wie rufe ich das auf?
;-)
Danke!
Florian
_______________________________________________
python-de maillist - python-de at python.org
http://mail.python.org/mailman/listinfo/python-de
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname : signature.asc
Dateityp : application/pgp-signature
Dateigröße : 836 bytes
Beschreibung: This is a digitally signed message part
URL : <http://mail.python.org/pipermail/python-de/attachments/20110620/5ce10881/attachment.pgp>
Mehr Informationen über die Mailingliste python-de