110

IPython Notebook を使い始めて楽しんでいます。ときどき、大量のメモリを必要とする、または無限ループを伴うバグのあるコードを作成します。「interrupt kernel」オプションの動作が遅い、または信頼性が低いと感じ、カーネルを再起動しなければならないことがあり、メモリ内のすべてが失われます。

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

Mac OS X 上の Firefox で IPython ノートブックの Anaconda ディストリビューションを使用しています。

4

5 に答える 5

87

を 2 回押すIと、カーネルを中断できます。

これは、コマンド モードの場合にのみ機能します。まだ有効になっていない場合は、 を押しEscて有効にします。

于 2016-07-06T16:55:17.457 に答える
61

私は間違っている可能性がありますが、「カーネルを中断する」ボタンは、現在実行中のコードに SIGINT シグナルを送信するだけであると確信しています (このアイデアは、Fernando のコメントhereでサポートされています)。 CTRL+C で十分です。Python 内の一部のプロセスは、他のプロセスよりも急激に SIGINT を処理します。

iPython Notebook で実行中の何かをどうしても停止する必要があり、端末から iPython Notebook を起動した場合、その端末で CTRL+C を 2 回押して、iPython Notebook サーバー全体を中断できます。これは iPython Notebook を完全に停止させます。つまり、作業を再開したり保存したりすることができなくなります。したがって、これは明らかに優れた解決策ではありません (CTRL+C を 2 回押す必要があります。これは安全機能であるため、ユーザーが操作を行わないようにするためです)。偶然にそれを行う)。ただし、緊急の場合は、通常、「カーネルの中断」ボタンよりも速くプロセスを強制終了します。

于 2013-07-10T05:40:14.400 に答える
7

IPython Notebook のショートカットを次に示します。

Ctrl-m iカーネルを中断します。(つまり、 の後の唯一の文字 i Ctrl-m)

この回答によると、 I2回も機能します。

于 2016-12-12T21:55:27.487 に答える
5

上記に追加するには: 割り込みが機能しない場合は、カーネルを再起動できます。

カーネル ドロップダウン >> 再起動 >> 再起動し、出力をクリアします。これは通常、トリックを行います。それでも問題が解決しない場合は、ターミナル (またはタスク マネージャー) でカーネルを強制終了してから再起動します。

割り込みは、すべてのプロセスでうまく機能しません。私は特に R カーネルを使用してこの問題を抱えています。

于 2017-01-12T15:47:46.177 に答える