当Jupyter突然挂起时该怎么办?

时间:2016-10-09 14:16:03

标签: python macos jupyter-notebook

我在OSX El Capitan上使用Jupyter notebook 4.0.6。

有一段时间我会开始运行一个笔记本,而单元格只会挂起,旁边有一个adverts而没有输出。

当发生这种情况时,我发现只在命令行中杀死Jupyter并重新启动它才能解决问题。重新启动内核并没有帮助。

还有其他人有这个问题吗?如果是这样,任何提示?

3 个答案:

答案 0 :(得分:2)

这通常发生在我在输出中途运行后编辑程序然后再次运行它时。这将导致内核受到撞击。我通常只是重新启动内核,然后它就可以正常工作了。

要重启内核,按Esc进入命令模式,然后按0 0(零)重启内核,现在你的程序将运行。

为避免以后出现这种情况,请记住在编辑代码之前完成程序的执行。

答案 1 :(得分:0)

我在OSX El Capitan上使用Jupyter Notebook 4.2.3,所以我可能不太乐于助人,但至少我可以尝试猜测。

[*]基本上意味着某些事情正在发生,所以如果你运行一个带有一些复杂计算的脚本,你最好等一下。

为确保您可以尝试使用可以帮助您控制过程的加载栏。建议使用一个好的here。 否则,您可以查看其他带有加载条的笔记本,默认情况下会显示任何进程。 Apache Zeppelin应具备此功能。

答案 2 :(得分:0)

我们可以中断内核。

[*]符号表示内核正在处理单元,并且该过程未完成。检查无限循环或递归函数。处理非常大的数据帧和低效的熊猫命令也可能是罪魁祸首

当在笔记本中运行较早的单元时,我们已经将大数据帧加载到内存中时,这是一个瓶颈。

我们可以简单地中断内核,使用I,I命令。但是要耐心点。右上角的圆圈应该变成白色而不是黑色。

Here you can interrupt the kernel

我学到的另一个不错的技巧是,如果我安装了另一个库,或者更改了在其中编写一些便捷函数的自定义python脚本,则可以使用importlib重新加载库。像这样 reload libraries

这样,我们不需要从头开始运行整个笔记本,这可能/可能不会花费很长时间。