問題タブ [sigkill]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux - bashでキーをsigkillにバインドする方法は?
アプリケーションを (Linux 上で) 開発していますが、残念ながらハングすることがあります。使用Ctrl+C
して sigint を送信できますが、プログラムが sigint を無視しています。だから私はプロセスを殺すダンスをしなければなりません:
-say - を押したときに現在のプロセスに kill シグナルを送信するように bash を設定する方法はありますCtrl+Shift+C
か?
linux - Linuxで「中断できない」プロセスを停止するには?
KILL
VirtualBox プロセスがぶら下がっていて、強制終了 ( / )しようとしましABORT
たが、成功しませんでした。親 pid は 1 (init) です。
top
D
「中断できないスリープ」として文書化されているプロセスを示しています。
strace
何も表示されません。
どうすればこれを取り除くことができますか? これにより、VirtualBox カーネル ドライバーをアンロードして新しいドライバーをロードすることができなくなります。
linux - SIGKILL アクセス許可ポリシーとは何ですか?
SIGKILL アクセス許可ポリシーとは何ですか?
非ルートで実行している間、カーネルや他のユーザーの何かを殺すことはできないと思いますが、これに関するドキュメントは見つかりませんでした。
python - 親と一緒に子供を殺す
私が作成したのではなく、CPU の負荷が高く不安定なプロセスを生成して通信するプログラムがあります。アプリがクラッシュSIGKILL
したり、.
このトピックが以前に取り上げられたことは知っていますが、説明されているすべての方法を試しましたが、どれもテストに耐えられないようです.
端末は常にそれを行うので、それが可能でなければならないことを私は知っています。端末で何かを実行して端末を強制終了すると、常に端末が停止します。
atexit
私はダブルフォークとを試しptys
ました。atexit
には機能しませんsigkill
。ダブルフォークはまったく機能しません。Pythonをptys
使用して作業する方法が見つかりませんでした。
今日、私は について知りましたprctl(PR_SET_PDEATHSIG, SIGKILL)
。これは、親プロセスが終了したときに、子プロセスが自分自身を強制終了する方法であるべきです。で使用しようとしましたpopen
が、まったく効果がないようです。
上記では、子が作成され、親が終了します。gnuchess
今、あなたはa を受け取って死ぬことを期待するでしょうがSIGKILL
、そうではありません。100% の CPU を使用しているプロセス マネージャーでまだ見つけることができます。
私の ? の使用に何か問題があるかどうか誰か教えてもらえますprctl
か? または、端末がどのように子供たちを殺すことができるか知っていますか?
iphone - プログラムが信号を受信したとは: SIGKILL は、デバイスで実行されているアプリをプロファイリングし、xcode プロファイラーを使用してリークを検出するときに意味します
プログラムが信号を受信しました: SIGKILL は、デバイスで実行されているアプリをプロファイリングし、xcode プロファイラーを使用してリークを検出するときに何を意味しますか?
私のアプリは、UIImage インスタンスで drawInRect を呼び出す行で壊れました
コール スタックの先頭は CGGStateCreateCopy です
solaris - Solaris 10:SIGCHLD/プロセス終了の高速検出
Solaris 10には、親と子のプロセスがあります。kill-KILLを使用して子プロセスを強制終了します。親プロセスでこれを可能な限り最速で検出したい(これはマスター/スレーブシステムであり、目標は親がバックアップを要求してできるだけ速く引き継ぐことです)。親プロセスは、子が終了し始めたことを知る必要があります(子が終了するまで待つ必要はありません)。
使用しているシステムでは、SIGKILLを送信してから親プロセスがSIGCHLDを受信するまでに約200ミリ秒の遅延が見られます。子プロセスのサイズと終了にかかる時間のために、この時間を短縮できるとは思いません。間違っている場合は修正してください。
私の選択肢は次のとおりです。-子供にSIGKILLを送信しないでください。代わりに親にシグナルを送信して、子を殺すことができるようにします(したがって、子プロセスが終了していることを即座に認識します)。「kill-KILL」コマンドの一部は私の制御不能であり、親への別のシグナルに置き換えることができないため、これは理想的ではありません。-子の終了処理に接続します(SIGKILLをキャッチできないため、これは不可能だと思います)。-他に何かアイデアはありますか?
アドバイスありがとうございます。NickB
java - Java で SIGKILL シグナルを適切に処理する方法
プログラムが kill シグナルを受信したとき、クリーンアップをどのように処理しますか?
たとえば、finish
ログアウト時にサードパーティのアプリ (私のアプリ) にコマンドを送信するように接続するアプリケーションがあります。finish
アプリが破棄されたときにそのコマンドを送信するのに最適な言葉は何kill -9
ですか?
edit 1: kill -9 はキャプチャできません。私を修正してくれてありがとう。
編集2:このケースは、ctrl-cと同じようにkillだけを呼び出す場合だと思います
iphone - Simulator 4.0 を実行している iPhone アプリが Sigkill を受け取りました
iPhone SDK 4 を入手したばかりで、以前取り組んでいたアプリの開発をやめようとしています。だから私は両方を実装
-(void)applicationDidEnterBackground:(UIApplication *)application
しました- (void)applicationWillTerminate:(UIApplication *)application
シミュレータ 4.0 でホーム ボタンをクリックすると、問題なく動作するようです。アプリが呼び出さ -(void)applicationDidEnterBackground:(UIApplication *)application
れ、バックグラウンド状態に入ります。
ただし、ホーム ボタンをダブルクリックして、バックグラウンドで実行されているアプリを表示し、押したままにしてマイナス記号を表示または終了します。マイナス記号をクリックすると、デバッガーは次のように言います
プログラムが受信したシグナル: "SIGKILL"
さらに、- (void)applicationWillTerminate:(UIApplication *)application
呼び出されることはありません。これを OS4 で動作させるために必要なことはありますか? または、少なくとも誰かが SIGKILL をデバッグする方法を教えてくれませんか。ありがとう。
perl - sleep() 中に Perl スクリプトが強制終了される
私は非常に単純な perl スクリプトを持っています。これは、1 つの関数で次のことを行います。
何らかの理由で、スクリプトが強制終了されることがあります (3 回に 1 回の実行など)。誰が殺しの責任を負っているのかはわかりませんが、「スリープ」コール中に発生したことだけはわかっています。
ここでヒントを教えてもらえますか?スクリプトが強制終了された後、その仕事は完了していません。これは大きな問題です。
ありがとう。
signals - 監視対象を使用した管理対象プロセスへのシグナルの受け渡し
Linuxターゲット用にCで記述しているFastCGIアプリケーションを生成および管理するためにsupervisordを使用しています。SIGINTを受信したときにアプリケーションを正常に終了するシグナルハンドラーがあります。ターミナルウィンドウでアプリを実行し、Ctrl-Cを発行して終了することで、シグナルハンドラーが希望どおりに機能することを確認しました。
(supervisorctlを介して)supervisordに「shutdown」コマンドを発行すると、supervisordはSIGKILLを呼び出さずにアプリを強制的に終了できないようです。
私のsupervisord.confファイルには次のものがあります
私は、shutdownコマンドの呼び出し時にsupervisordが「stopsignal」を発行することを前提としているため、INFOステートメントは、私のアプリがsupervisordによって発行されたSIGINTに応答していないことを示しています。
監視対象とアプリの間を通過する信号をデバッグするにはどうすればよいですか?