私はpythonクラスを持っていますが、私は完全に終了メソッドを呼び出すことによって終了できません。Pythonはきれいにクラスループを終了します
私はできるだけ早く停止要求をキャッチすることができますように、私は、ループ内の小さな遅延を有する:
from time import sleep
more imports...
class XXX:
def __init__():
self.enable = True
more code...
def stop(self):
self.enable = False
def loop(self):
do something....
def run(self):
while self.enable:
self.loop()
for i in range(15):
if(not self.enable):
break
else:
sleep(1)
私がstop()メソッドを呼び出し、それがでクラッシュするまでループが正常に動作:
NameError: name 'sleep' is not defined
これをきれいに終了できますか?
を、それは 'time.sleepです() '(そして、' import time'を忘れることはありません) – cdarke
ちなみに、あなたのサンプルは 'stop'を呼び出すことはありません。 – BrenBarn
ありがとう、私は時間から睡眠をインポートしました。これはコードのスニペットです。stop()を呼び出すまではすべて動作します。 – crankshaft