首页 > 解决方案 > 如何暂停和恢复 python 脚本

问题描述

首先,我不是 python 专家。我目前正在研究一个机器学习问题,我必须运行可能需要几天才能结束的脚本。所以为了让我更容易,我正在寻找一种可以暂停执行,将执行状态保存在文件或其他东西中的方法。

目标是能够中断脚本,保存执行状态,做其他事情甚至可能关闭计算机。然后回来加载执行状态并运行程序,而不是从头开始。我不知道这是否可能,但它会让我的事情变得更容易。谢谢您的帮助

标签: pythonexecutionresumepause

解决方案


好的,所以如果您想将机器学习算法的状态保存到磁盘,这将取决于您使用的库(但基本上,只需在每个时期将状态保存到磁盘,当您需要暂停时停止进程,并且当您恢复时,进行最新的保存)。因为sklearn有一个关于如何做的教程:https ://scikit-learn.org/stable/modules/model_persistence.html

如果您真的不需要将状态保存到磁盘,并且您正在运行 Linux / Unix / MacOS,则可以暂停该过程

  • 如果您在终端中,可以使用 暂停CTRL-Z,稍后使用命令恢复fg
  • 否则你可以kill -STOP $YOUR_PROCESS_PID 用来暂停进程(是的 STOP 暂停进程,我知道这很混乱),并kill -CONT $YOUR_PROCESS_PID重新启动它

这种方法的问题是状态停留在 RAM 中(但如果你有它,它将被分页交换)


推荐阅读