import multiprocessing
import time
class testM(multiprocessing.Process):
def __init__(self):
multiprocessing.Process.__init__(self)
self.exit = False
def run(self):
while not self.exit:
pass
print "You exited!"
return
def shutdown(self):
self.exit = True
print "SHUTDOWN initiated"
def dostuff(self):
print "haha", self.exit
a = testM()
a.start()
time.sleep(3)
a.shutdown()
time.sleep(3)
print a.is_alive()
a.dostuff()
exit()
Sadece yukarıdaki kodun gerçekten "çıktınız" yazdıramadığını merak ediyorum. Neyi yanlış yapıyorum? eğer öyleyse, birisi bana nazikçe çıkmak için doğru yolu işaret edebilir mi? (Ben process.terminate ya da kill atıfta değilim)Python Çoklu İşlem Çıkış Zarif Nasıl?
Aslında tüm bu kod, sizi vermelidir:
Aşağıdaki kodu deneyin. Başka bir deyişle: Muhtemelen son sekiz satırı kesmek istersiniz. – balpha
Not: Bu örnek kod win32'de başarısız olacaktır çünkü ana komut dosyasını bir güvenlik yankısı ile korumamışsınızdır: 'Eğer __name__ ==" __main__ ": ... – jkp