从 运行 java 程序中获取 CPU 数字
Get CPU number from running java program
我正在 运行ning 一个 java 程序,并且想要获取进程当前正在 运行ning 的 cpu。 java 中是否有任何标准方法来获取此信息?
我的备份计划是 运行 类似 ps -eF
的东西来为我当前的流程获取 cpu 但这看起来很难看
您要查找的数据不是静态数据而是动态数据,我认为理想情况下应该是 Java java.lang.Thread
class 的一部分,其中方法调用类似于此Thread.currentThread().getCPUNumber()
应该给你那个细节。
Java 应该屏蔽 OS 特定的系统调用并在 API 级别提供该数据。
据我所知,您的问题的答案是 否 - java 中是否有任何标准方法来获取此信息? 因为此数据是动态的并且 OS 是线程调度程序,所以它不能成为 System.getProperty(...)
OR System.getenv(..)
OR Runtime.getRuntime().
的一部分。
我想,正如这些 SO 问题中所建议的那样,您必须从 Java 线程 - Q1 , Q2 中进行 OS 特定的系统调用。
希望对您有所帮助!!
我正在 运行ning 一个 java 程序,并且想要获取进程当前正在 运行ning 的 cpu。 java 中是否有任何标准方法来获取此信息?
我的备份计划是 运行 类似 ps -eF
的东西来为我当前的流程获取 cpu 但这看起来很难看
您要查找的数据不是静态数据而是动态数据,我认为理想情况下应该是 Java java.lang.Thread
class 的一部分,其中方法调用类似于此Thread.currentThread().getCPUNumber()
应该给你那个细节。
Java 应该屏蔽 OS 特定的系统调用并在 API 级别提供该数据。
据我所知,您的问题的答案是 否 - java 中是否有任何标准方法来获取此信息? 因为此数据是动态的并且 OS 是线程调度程序,所以它不能成为 System.getProperty(...)
OR System.getenv(..)
OR Runtime.getRuntime().
的一部分。
我想,正如这些 SO 问题中所建议的那样,您必须从 Java 线程 - Q1 , Q2 中进行 OS 特定的系统调用。
希望对您有所帮助!!