当我使用线程或主线程时,我注意到它们被限制为每个线程的 CPU 的 25%。
有没有办法告诉线程使用更多 CPU ?因为我觉得这样有点限制。
多谢。
你可能有一台四核机器。一个线程不能在多个内核上运行。
public class Mainn {
public static void main(String[] args) {
int noOfProcessors = Runtime.getRuntime().availableProcessors();
System.out.println(noOfProcessors);
for (int i = 0; i< noOfProcessors ; i++){
new Thread(new Runnable() {
@Override
public void run() {
for(;;){
}
}
}).start();
}
}
}
这将使用大量的 CPU 测试它。
线程或进程只会使用所需的计算能力。除非您创建需要更多计算的代码,否则您不能告诉它需要更多的计算能力
JAVA 中的一个线程一次可以在单核上运行。所以我所做的就是为每个核心创建一个线程。