我在一个使用Ubuntu的功能强大的多核服务器上运行c++代码时遇到了问题。问题是我的应用程序只使用了不到10%的cpu。但在我的i3笔记本电脑上,同样的应用程序使用了大约100%的cpu,而我的笔记本电脑使用的是不同版本的Ubuntu。
我的操作系统:
Linux version 3.11.0-23-generic (buildd@batsu) (gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5) ) #40~precise1-Ubuntu SMP Wed Jun 4 22:06:36 UTC 2014
服务器的操作系统:
Linux versi
我在Linux服务器上运行了以下Java代码: while (true) {
int a = 1+2;
} 它导致一个CPU核心达到100%的使用率。我对此感到困惑,因为我了解到CPU通过时间拆分来处理任务,这意味着CPU将在一个时隙内完成一个任务(CPU时间范围调度器)。如果有10个时隙,则while true任务应该最多使用10%的CPU使用率,因为其余90%将分配给其他任务。那么为什么是100%呢?