C++实现一个简单的控制cpu利用率的程序

写一个程序,让控制cpu利用率在20%左右

思路很简单:每个循环控制sleep的时间占比

cpp 复制代码
#include <iostream>
#include <chrono>
#include <unistd.h>

int main() {
    int ratio = 20;
    int base_time = 1000;
    int sleeptime = base_time * (100-ratio);
    int runtime = base_time * ratio;
    while(true) {
        auto start = std::chrono::high_resolution_clock::now();
        while(std::chrono::duration_cast<std::chrono::microseconds>(std::chrono::high_resolution_clock::now() - start).count() < runtime) {}
        usleep(sleeptime);
    }

    return 0;
}
相关推荐
wbs_scy5 小时前
Linux C++ 高并发编程:线程池全链路深度解析,从原理到手撕实现
java·开发语言
JAVA面经实录9175 小时前
Linux 常用命令完整知识体系
java·linux·开发语言·汇编
贪玩的蛋挞5 小时前
C#与闭包
开发语言·c#
端庄的战斗机6 小时前
javascript 设计模式(文章很长,请自备瓜子,水果和眼药水)
开发语言·javascript·设计模式
Full Stack Developme6 小时前
Java LRU 与 LFU 算法及应用
java·开发语言·算法
疋瓞8 小时前
python和C++对比(1)_数据类型和数据结构
数据结构·c++·python
C语言小火车8 小时前
C++ 堆排序深度精讲:基于完全二叉树的选择排序进化,最坏情况 O(n log n) 的稳定王者
开发语言·c++·算法·排序算法·堆排序
北冥you鱼8 小时前
abigen 最佳实践:从入门到精通,高效生成 Go 语言合约绑定
开发语言·golang·区块链
ALex_zry9 小时前
C++26 std::complex 结构化绑定详解:auto [re, im] = c
c语言·开发语言·c++
她说..9 小时前
Java 默认值设置方式
java·开发语言·后端·springboot