1. ホーム
  2. python

[解決済み] FirefoxのIPython Notebookで、実行中のセルを解除するためにCTRL+Cに相当する機能はありますか?

2022-10-19 15:56:24

質問

IPython Notebookを使い始め、楽しんでいます。時々、大量のメモリを必要とするバグだらけのコードを書いたり、無限ループを起こすことがあります。私は、quot;interrupt kernel" オプションが遅いか信頼性がないことを発見し、時々私はカーネルを再起動しなければならず、メモリ内のすべてを失うことになります。

また、OS X がメモリ不足になるようなスクリプトを書くこともあり、その場合はハード リブートしなければなりません。100%確実ではありませんが、以前にこのようなバグを書いてターミナルで Python を実行したとき、通常は CTRL + C 私のスクリプトです。

私は、Mac OS X上のFirefoxとIPython notebookのAnacondaディストリビューションを使用しています。

どのように解決するのですか?

間違っているかもしれませんが、quot;interrupt kernel" ボタンは、現在実行しているコードに SIGINT 信号を送信するだけだと思います (この考えは Fernando のコメントによってサポートされています。 ここで でサポートされています)、これはCTRL+Cを押したときと同じことです。Python 内のいくつかのプロセスは、他のプロセスよりも唐突に SIGINT を処理します。

iPython Notebook で実行中の何かをどうしても止める必要があり、ターミナルから iPython Notebook を起動した場合、ターミナルで CTRL+C を 2 回押すと iPython Notebook サーバ全体を中断させることができます。これは iPython Notebook を完全に停止させるので、再起動や作業の保存ができなくなり、明らかに良い解決策ではありません(CTRL+C を2回打つ必要があるのは、誤ってやってしまわないための安全機能だからです)。しかし、緊急の場合には、一般に、"interrupt kernel" ボタンよりも迅速にプロセスを終了させることができます。