2017-01-18 4 views
2

私はJavaプログラムを実行しており、プロセスが現在実行中のCPUを取得したいと考えています。これを得るためにjavaに標準的な方法がありますか?実行中のJavaプログラムからCPU番号を取得

マイバックアップ計画が私の現在のプロセスのCPUを取得するためにps -eFのようなものを実行することですが、それはあなたが探している醜い

+0

なぜこの情報が必要ですか? –

+4

[JavaからOSのCPU使用率を取得する方法]の複製可能性(http://stackoverflow.com/questions/18489273/how-to-get-percentage-of-cpu-usage-of-os-from- Java) – shmosel

+0

CPU使用率またはCPU IDを意味しますか? – bmargulies

答えて

0

データは静的データではなく動的なものではないようで、私の意見では、理想的でなければなりませんJava java.lang.Threadクラスの一部で、このThread.currentThread().getCPUNumber()に似たメソッド呼び出しでその詳細が分かるはずです。

Javaは、OS固有のシステムコールを保護し、そのデータをAPIレベルで提供する必要があります。

私の知る限りでは、答えはあなたの質問のためにNOある - は、これを取得するには、Javaのいずれかの標準的な方法はありますか?このデータは動的で、OSはスレッドスケジューラであるため、System.getProperty(...)またはSystem.getenv(..)またはRuntime.getRuntime().の一部ではありませんでした。

これらの質問に示唆されているように、Javaスレッド内でOS固有のシステムコールを作成する必要があります。Q1Q2

希望すると助かります!

関連する問題