問題タブ [kill-process]

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.

0 投票する
6 に答える
17108 参照

android - Process.killProcess(Process.myPid())を呼び出すのはなぜ悪い考えですか?

この方法を使用することは「良くない」、使用すべきではない、アプリケーションを「閉じる」ための正しい方法ではなく、Androidの動作方法でもないという投稿をいくつか読んだことがあります...

私は、Android OSがプロセスを終了する適切なタイミングであるときに私よりもよく知っているという事実を理解し、受け入れますが、このkillProcess()方法を使用することが間違っている理由についての適切な説明をまだ聞いていません。結局のところ、これはAndroidAPIの一部です。

私が知っていることは、他のスレッドが潜在的に重要な作業(ファイルの操作、DBへの書き込み、HTTPリクエスト、サービスの実行など)を実行しているときにこのメソッドを呼び出すと、スレッドが終了し、明らかに良くないということです。killProcess()また、アプリが最後に使用されたときからシステムがメモリ状態を「保持」し、それを防ぐため、アプリケーションを「再度開く」ことがより高速になるという事実から利益を得ることができることを私は知っています。

この理由以外に、そのような操作がなく、アプリケーションを開くたびに最初から起動するかどうかを気にしないと仮定すると、このkillProcess()方法を使用しない理由は他にもありますか?

finish()を閉じる方法を知っているActivityので、それを答えに含めないでください。

finish()すべてのアプリケーションではなく、専用でActivityあり、それを使用する理由と時期を正確に知っていると思います。

そしてもう1つ、Unity3Dフレームワークを使用してゲームを開発し、プロジェクトをAndroidにエクスポートしています。生成されたapkを逆コンパイルしたとき、Unityから作成されたJavaソースコード(Unityの-Application.quit()メソッドを実装している)を見つけて非常に驚きましたProcess.killProcess(Process.myPid())

Application.quit()Unity3Dドキュメントによるとゲームを閉じる正しい方法であると思われます(本当にそうですか?多分私は間違っていて何かを逃したかもしれません)、なぜUnityのフレームワーク開発者はネイティブAndroidでこれを実装したのですか?

0 投票する
0 に答える
744 参照

android - マウントしようとしているSDカードを使用しているときにアプリが強制終了されないようにするにはどうすればよいですか?

SD カードでやるべき重い作業があるとします (CRC チェック、ダウンロード、または考えられることなら何でも)。結局のところ、ユーザーがアプリの実行中に SD カードをマウント (または削除) すると、アプリは OS によって警告なしに自動的に強制終了されます。

私はそれを避けたい、そして出たくない。代わりに、可能な場合は作業を停止して再開したいと思います(または、殺されないように他のことを行います)。

要するに、私の質問は、タイトルが示すとおりです。SDカードがマウントされているときに、SDカードの使用中にアプリが強制終了されないようにするにはどうすればよいですか?

私は次のことを試しました:

  1. すべての例外をキャッチします。アプリは単純に強制終了されるため、これは機能しませんでした。

  2. broadcastReceiver を介してマウントの意図をリッスンします。インテントをキャッチする前にアプリが強制終了されるため、機能しませんでした。

  3. SDカードの状態を確認してください。チェックと書き込みの間にマウントができるため、これは機能しません。

SD カードに関連するすべてのことを処理する新しいサービスを作成し、独自のプロセスを提供できるかもしれませんが、それは本当に解決策ですか? それも機能しますか?この問題を克服する他の方法はありませんか?

サンプル コードとして、以下のコードを使用できます。それは問題を解決するためだけです:

注: もちろん、私が開発したアプリは内部ストレージにインストールされます。SD カードにインストールされているアプリが強制終了されないというのは理にかなっていないことはわかっています。もちろん、それも興味深い質問になる可能性があります(SDカードのマウントを回避できる可能性さえありますか?)が、それはここでの質問ではありません。

0 投票する
1 に答える
35179 参照

linux - 名前を付けてプロセスを開始する

基本的に、独自の子プロセスを作成する可能性のあるいくつかのプロセスを動的に開始したいと考えています。また、作成したプロセスの特定のグループをいつでも強制終了したいと考えています。私が考えることができる1つの方法は、プロセスを名前で開始し(グループとして区別するため)、pkillを使用して名前でプロセスを強制終了することです。問題は、名前でプロセスを開始して、pkill を使用してプロセスを名前で強制終了できるようにする方法です。私は他のソリューションにもオープンです。

0 投票する
1 に答える
1083 参照

kill-process - Microsoft.Office.Interop.Excel の使用中に EXEL.EXE プロセスを強制終了する

重複
の可能性: 相互運用アプリケーション プロセスの強制終了

Excel からデータを取得するために Microsoft.Office.Interop.Excel を使用しています。COM オブジェクトをクリアしても、EXEL.EXE のいくつかのインスタンスがバックグラウンドに残ります。以下のコードを確認してください。

どこが間違っているのか教えてください。

0 投票する
1 に答える
2448 参照

php - ブラウザから実行するとposix_killが機能しない

既に実行中のプロセスを強制終了しようとする単純なスクリプトがあります。同じためにposix_killを使用しています。コマンド シェルから実行するとスクリプトは正常に実行されますが、ブラウザから実行すると機能しません。

私は常に次の出力を取得します。これは、スクリプトが正常に実行されていることを意味しますが、プロセスが強制終了されていないことを意味します: '4633' (長さ = 4) 2 => 文字列 '' (長さ = 0) 4633 を殺す

Apache の「error.log」ファイルを調べたところ、ブラウザから実行するたびに次のようなエントリが追加されることがわかりました。 [Sat Jun 23 12:24:55 2012] [error] [client 127.0. 0.1] ファイルが存在しません: /var/www/favicon.ico

残念ながら、このエラーからは、何が問題なのかについて多くの情報が得られません。私はphp.iniの設定をチェックアウトしましたが、何か問題があるようには見えません(私が持っている限られた理解によると)。「disabled_functions」リストなどにposix_killが表示されないか、プロセスの実行を妨げるその他の設定がありません。

助けていただければ幸いです!!

ありがとう、カピル

0 投票する
2 に答える
14204 参照

php - fclose():18は有効なストリームリソースではありません

proc_openを使用してプロセスを実行しようとしています。プロセスのI/Oはパイプで処理されます!!

たまたま、開いた「cプログラム」が動かなくなってしまうことがあり、プロセスを強制的にシャットダウンするmax_time_limitチェックを追加しました。コールバック関数(つまり、onExit)を追加して(「call_user_function」を使用)、「プロセスが終了する」たびに有効な方法で、または強制的に情報を処理します。

「終了」機能で、I/Oパイプを閉じています

プロセスに有効な終了があった場合、上記は完全に正常に機能します。ただし、プロセスを強制的に強制終了した場合は、proc_terminateを呼び出して強制終了しました。プロセスの終了も先に進んでI/Oパイプを閉じることを理解していますが、問題は、コールバックのために、「onExit」関数プロセスが常に呼び出されることです(これが私が望む方法です。 。さらに処理を行う必要があるため)。さて、この場合、パイプを閉じようとすると、次のエラーが発生します。

「ftell」を使用してパイプが有効かどうかを確認しようとしましたが、それもエラーになりました。パイプがすでに閉じられているかどうかを確認するにはどうすればよいですか?

0 投票する
5 に答える
57271 参照

windows - node.jsで開いているプロセスを強制終了する方法は?

Node.jsのビルドシステムを崇高にセットアップしようとしているので、F7キーを押して開いたファイルの「ノード」を呼び出すことができます。問題は、プロセスが永久に開いていることです。そのため、2回目にF7を使用すると、アドインが使用されます。

開いた「node.exe」プロセスをnode.jsから強制終了する方法はありますか?

0 投票する
2 に答える
2223 参照

javascript - Javascript Process Kill with pass in name

Windowsマシンで実行されているプロセスを強制終了する短いJavaScriptコードを作成しようとしています(7でプログラムを開発していますが、サーバー2003で本番環境で実行する必要があります)。私は次のコードから始めました:

ただし、強制終了されるプロセスを渡す必要があります。殺すにはさまざまなものがあり、何を殺すかを決定する別のプログラムがあります。

現在、次のコードがありますが、まだ機能しません。

0 投票する
31 に答える
1808389 参照

linux - Linux の特定のポートで実行されているプロセスを強制終了するには?

./shutdown.shtomcat/binディレクトリから使用してTomcatを閉じようとしました。しかし、サーバーが適切に閉じられていないことがわかりました。そのため、再起動できませんでした
。Tomcat はポートで実行されています8080

で実行されている tomcat プロセスを強制終了したい8080。どのプロセスを強制終了するかを選択するために、最初に特定のポート (8080) で実行されているプロセスのリストが必要です。

0 投票する
1 に答える
312 参照

c# - マルチスレッドプロセスを強制終了します

Windows Mobile 6.5

System.Threading.Timerを使用して、指定された間隔でネットにデータをアップロードするプロセスがあります。

ここで、GUIアプリケーションからこのプロセスを終了したいと思います。プロセス列挙子を使用してProcessオブジェクトを取得できます。Process.Killを呼び出すとどうなりますか?それはそれを終了しますか、プロセスはローカルデータベースからデータを読み取り/削除してサービスに送信している途中である可能性があります。少なくとも途中で終了せず、終了すると次のタイマーイベントが発生する前に終了できることを確認するにはどうすればよいですか?