Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/158.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在Linux上,如何编写一段程序,使CPU在一定程度上繁忙?_C++_Linux - Fatal编程技术网

C++ 在Linux上,如何编写一段程序,使CPU在一定程度上繁忙?

C++ 在Linux上,如何编写一段程序,使CPU在一定程度上繁忙?,c++,linux,C++,Linux,我正在考虑编写一个测试工具,用于在Linux上使CPU在指定的级别上忙碌,比如80%的使用率。我该怎么做?这个工具是一个脚本还是C++程序并不重要。p> 您可以使用该程序。您还可以在Ubuntu(或Debian)中使用cpuburn套件: 对于独立于平台的解决方案,您可以编译并运行此C++11程序的一个或多个实例,并根据所需的CPU使用百分比微调命令行参数 // // Application to sleep for nanoseconds specified by command-line a

我正在考虑编写一个测试工具,用于在Linux上使CPU在指定的级别上忙碌,比如80%的使用率。我该怎么做?这个工具是一个脚本还是C++程序并不重要。p> 您可以使用该程序。您还可以在Ubuntu(或Debian)中使用
cpuburn
套件:


对于独立于平台的解决方案,您可以编译并运行此C++11程序的一个或多个实例,并根据所需的CPU使用百分比微调命令行参数

//
// Application to sleep for nanoseconds specified by command-line argument
//

#include <chrono>
#include <iostream>
#include <limits>
#include <sstream>
#include <thread>

int main(int argc, char* argv[]){
  if (argc >= 2) {
    std::istringstream iss(argv[1]);
    unsigned int interval;
    if (iss >> interval)
      for(uint64_t i=0; i<std::numeric_limits<uint64_t>::max(); i++)
      std::this_thread::sleep_for(std::chrono::nanoseconds(interval));
  }
}
//
//由命令行参数指定的用于睡眠纳秒的应用程序
//
#包括
#包括
#包括
#包括
#包括
int main(int argc,char*argv[]){
如果(argc>=2){
标准::istringstream iss(argv[1]);
无符号整数间隔;
如果(iss>>间隔)
对于(uint64_t i=0;i
//
// Application to sleep for nanoseconds specified by command-line argument
//

#include <chrono>
#include <iostream>
#include <limits>
#include <sstream>
#include <thread>

int main(int argc, char* argv[]){
  if (argc >= 2) {
    std::istringstream iss(argv[1]);
    unsigned int interval;
    if (iss >> interval)
      for(uint64_t i=0; i<std::numeric_limits<uint64_t>::max(); i++)
      std::this_thread::sleep_for(std::chrono::nanoseconds(interval));
  }
}