問題タブ [pid]

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 に答える
1823 参照

perl - Perl でユーザーの端末 PID をすばやく見つけるにはどうすればよいですか?

次のコード スニペットは、ptree を使用して、返された結果から3 番目の PID を取得することにより、ユーザーの端末の PID を見つけるために使用されます。すべての端末 PID は、ユーザーのログインをキーとしてハッシュに格納されます。

以下は、サンプルの ptree 実行です。

これをコーディングするより良い方法があるかどうか知りたいです。これは、実行に最も時間がかかるスクリプトの部分です。

注: このコードは、他のスニペットと共にループ内にあり、数回実行されます。

0 投票する
14 に答える
132345 参照

python - Pythonで指定されたpidを持つプロセスが存在するかどうかを確認するには?

pid が有効なプロセスに対応しているかどうかを確認する方法はありますか? から以外の別のソースから pid を取得してos.getpid()います。その pid を持つプロセスがマシンに存在しないかどうかを確認する必要があります。

Unix と Windows で利用できるようにする必要があります。PIDが使用されていないかどうかも確認しています。

0 投票する
4 に答える
7407 参照

python - PID が (Windows) に存在するかどうかを判断する簡単な方法は?

「速い」は少し主観的であることを認識しているので、いくつかのコンテキストで説明します。私は、クロスプラットフォームの方法でプロセス情報を読み取るためのpsutilという Python モジュールに取り組んでいます。関数の 1 つはpid_exists(pid)、PID が現在のプロセス リストにあるかどうかを判断するための関数です。

現在、私はEnumProcesses()を使用してプロセス リストを取得し、リストを操作して PID を探しているという明白な方法でこれを行っています。kill(pid, 0)ただし、いくつかの単純なベンチマークでは、PID が存在するかどうかを判断するために 0 シグナルを使用している UNIX ベースのプラットフォーム (Linux、OS X、FreeBSD) の pid_exists 関数よりも大幅に遅いことが示されています。追加のテストでは、ほとんどの時間を占めているのは EnumProcesses であることが示されています。

EnumProcesses を使用して PID が存在するかどうかを判断するよりも速い方法を知っている人はいますか? OpenProcess()を試して、存在しないプロセスを開くエラーをチェックしましたが、これは EnumProcesses リストを反復するよりも 4 倍以上遅いことが判明したので、それも同様です。他の(より良い)提案はありますか?

: これは、pywin32 拡張機能などのサードパーティの lib 依存関係を回避することを目的とした Python ライブラリです。現在のコードよりも高速で、標準の Python ディストリビューションにない pywin32 やその他のモジュールに依存しないソリューションが必要です。

編集: 明確にするために、プロセス情報の読み取りに固有の競合状態があることをよく認識しています。データ収集中にプロセスが停止した場合、または他の問題が発生した場合は、例外を発生させます。pid_exists() 関数は、適切なエラー処理を置き換えることを意図していません。

更新: どうやら私の以前のベンチマークには欠陥があったようです - C でいくつかの簡単なテスト アプリを書きまし

0 投票する
7 に答える
86703 参照

c# - Windows で実行されているすべてのプロセスを一覧表示するにはどうすればよいですか?

すべてのアクティブなプロセスをループして、タスク マネージャーに似たような診断チェック (メモリ使用量、CPU 時間など) を行う方法を見つけたいと思います。

問題は次の 2 つの部分に分けられます。

  1. すべてのプロセスを見つける
  2. それらに関する診断属性の検索

どの名前空間で調べればよいかさえわかりません。ヘルプ/ヒント/リンクに感謝します。

0 投票する
9 に答える
17941 参照

c# - MS-Word ApplicationClass から PID を取得しますか?

次のコードを検討してください。

_application によって起動された Winword.exe プロセスから PID を取得できますか?

ファイルが破損していると、次のコードを使用しても ApplicationClass を終了できないため、PID が必要です。

winword.exe プロセスを検索して強制終了することはできません。複数のプロセスがあり、どれを強制終了するかわからないからです。各 ApplicationClass の PID を取得できれば、終了するのに苦労している正しい winword.exe プロセスを強制終了できます。

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

c# - C# を使用してファイルをブロックしているプロセスから PID を取得する方法はありますか?

C# を使用してファイルをブロックしているプロセスから PID を取得する方法はありますか?

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

c++ - Windowsのソケット番号からのPID?

さまざまなアプリケーションによってネットワークとの間で送受信されたバイト数をカウントする必要があります。最初はLSPの使用を考えましたが、LSPをまったく使用しないアプリケーション(SMBなど)がたくさんあります。これが私が小さなスニファーを書いた理由です。このアプリケーションはIPレベルで動作し、recvfromを使用してデータを収集します。

だから私はリモートホスト、ローカル、リモートポートのアドレスを持っています。これはかなりクールですが、ローカルソケット所有者のPIDも必要です。それで、そのようなPIDを取得する簡単な方法はありますか?回避策は、GetTcpTable、GetUdpTable、またはAllocateAndGetUdpExTableFromStackとAllocateAndGetTcpExTableFromStack(2k、XP、XP SP2、Vistaの間でこれらの関数に多くの違いがあります)を使用し、結果テーブルをルックアップすることですが、エレガントではなく非効率的です...

では、「GetPIDOfSocket」関数のようなものはありますか?C ++、Delphiなどのさまざまな言語を使用できるため、解像度はWinAPI(.netなし)のみである必要があります。