我们正在使用jupyterLab进行一些长时间运行的操作(在我们的案例中进行物理模拟)。用户应该能够安全地停止这些操作,而不会杀死内核。
是否有干净的方法可以做到这一点?
也许有最佳实践吗?
我的手机看起来像这样:
environment = gym.make()
running = True
while running:
environment.step()
running = ???
serialize(environment)
答案 0 :(得分:1)
根据https://stackoverflow.com/a/19040553/,IPython通过发送SIGINT中断内核。如How to stop an infinite loop safely in Python?中所述,应该不可能以编程方式捕获和处理信号。
编辑:听起来很有帮助:graceful interrupt of while loop in ipython notebook