2017-01-18 5 views
2

Я запускаю java-программу и хочу получить процессор, в котором в данный момент запущен процесс. Есть ли какой-либо стандартный способ в java, чтобы получить это?Получить номер процессора от запуска java-программы

Моего план резервного копирования, чтобы запустить что-то вроде ps -eF, чтобы получить процессор для моего текущего процесса, но это кажется уродливым

+0

Зачем нужна эта информация? –

+4

Возможный дубликат [Как получить процент использования ЦП ОС от java] (http://stackoverflow.com/questions/18489273/how-to-get-percentage-of-cpu-usage-of-os-from- java) – shmosel

+0

Вы имеете в виду использование ЦП или идентификатор ЦП? – bmargulies

ответ

0

данные, которые вы ищете не статичные данные, но динамичная и, по моему мнению, в идеале должна быть часть Java java.lang.Thread класс, где аналогичный этому методу вызов Thread.currentThread().getCPUNumber() должен предоставить вам эту деталь.

Java должен защищать специфические системные вызовы ОС и предоставлять эти данные на уровне API.

Насколько я знаю, ответ NO за ваш вопрос - Есть ли какой-либо стандартный способ в java, чтобы получить это?, поскольку эти данные являются динамическими, а ОС - планировщиком потоков, он не может быть частью System.getProperty(...) ИЛИ System.getenv(..) ИЛИ Runtime.getRuntime()..

Я предполагаю, что, как было предложено в этих ВОПРОСАХ, вы должны сделать системные вызовы OS из вашей Java-темы - Q1, Q2.

Надеюсь, это поможет!

Смежные вопросы