Java 限制可用处理器
不久前我在使用Solaris时遇到了一个问题,我想限制Runtime.getRuntime.AvailableProcessor返回的Java可以看到的CPU数量。我想我已经拥有了它,我得到了一些关于Linux的信息,并且相信它。有人告诉我,使用taskset会限制java使用的CPU数量,这是正确的,但不会改变可用处理器返回的内容 我已经搜索了很多,想找到一些方法来改变这个可用的处理器返回值,但我没有找到任何东西。有人知道限制它的方法吗?或者为什么taskset-c0,1java-cp./Test不能工作 Test.javaJava 限制可用处理器,java,linux,cpu-usage,Java,Linux,Cpu Usage,不久前我在使用Solaris时遇到了一个问题,我想限制Runtime.getRuntime.AvailableProcessor返回的Java可以看到的CPU数量。我想我已经拥有了它,我得到了一些关于Linux的信息,并且相信它。有人告诉我,使用taskset会限制java使用的CPU数量,这是正确的,但不会改变可用处理器返回的内容 我已经搜索了很多,想找到一些方法来改变这个可用的处理器返回值,但我没有找到任何东西。有人知道限制它的方法吗?或者为什么taskset-c0,1java-cp./Te
public class Test {
public static void main(String args[]) {
System.out.println(Runtime.getRuntime().availableProcessors());
}
}
干杯任务集在这里不起作用并不奇怪,因为它是一个设置调度程序参数的命令,而可用的处理器没有任何理由查询调度程序 请注意,在您的示例中,taskset不仅仅将您限制为两个处理器;它将您限制为两个特定的处理器0和1 我想知道您是否可以使用横切AOP或字节码生成来包装AvailableProcessor调用