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;
}
相关推荐
江屿风5 分钟前
C++图论基础单源最短路-常规版dijkstra算法/堆优化版dijkstra算法/bellman-ford 算法/spfa 算法流食般投喂
开发语言·c++·笔记·算法·图论
摇滚侠7 分钟前
MyBatis 入门到项目实战 MyBatis 逆向工程 62
java·开发语言·mybatis
ch.ju12 分钟前
Java Programming Chapter 4——Multi-level inheritance
java·开发语言
Molesidy15 分钟前
【Linux】【C++】Linux下的C++编程以及基于GDB的VSCode的C++调试
开发语言·c++
techdashen15 分钟前
用 Rust 真正发出 Ping:FFI 类型、newtype 与 MaybeUninit
开发语言·后端·rust
塵觴葉19 分钟前
基于Lua协程的简单任务管理
开发语言·lua
liulilittle20 分钟前
甲骨文云中国大陆定向 QoS 原理及绕过解决方案
服务器·开发语言·网络·计算机网络·oracle·通信·qos
程序猿编码21 分钟前
子域猎手:一款高性能DNS枚举工具的设计与实现
linux·c++·python·c·dns
iCxhust22 分钟前
C# 生成命令行程序 将hex格式烧录程序转换成bin烧录格式
开发语言·汇编·单片机·嵌入式硬件·c#·微机原理
Mortalbreeze22 分钟前
C++11类的新特性:移动语义、default、delete、override详解
开发语言·c++