在Jupyter中在后台运行进程

问题描述 投票:3回答:1

在Jupyter笔记本中,如果我运行需要很长时间的单元格,则在计算第一个单元格之前,我将无法运行任何其他单元格。

是否有办法告诉Jupyter在后台进程中运行一个单元,以便我可以继续运行其他单元?

python-3.x jupyter-notebook
1个回答
0
投票

[我使用Multiprocessing进行了尝试,发现它不起作用,我不知道这是Windows还是最近的Jupyter / Python的限制。

因此,我根据这项工作使用线程创建了一个解决方案:https://gist.github.com/maartenbreddels/3378e8257bf0ee18cfcbdacce6e6a77e所有归功于该要点的作者

此方法通过将回调提交到同一事件循环来钩挂IPython内部用于执行工作的0MQ事件循环。

我准备了一个示例Jupyter Notebook Gist在这里:https://gist.github.com/the-moog/94b09b49232731bd2a3cedd24501e23b

此示例异步更新一对进度条,您应该能够用执行其他任务的代码替换回调。

(我不喜欢帖子中的链接。如果有人知道如何直接将笔记本视图呈现到stackoverflow中,请让我知道)

© www.soinside.com 2019 - 2024. All rights reserved.