shuhua_qi 2024-05-21 23:58 采纳率: 0%
浏览 2

服务程序框架设计优化

我们经常写一个main函数,然后创建一个对象,然后对象内部创建多个任务线程,启动后,然后main函数内部又调用一个while循环空转,这样主线程就一直不做事了,我想优化一下这样的代码架构,有什么开源的框架和工程实践可以参考一下

  • 写回答

5条回答 默认 最新

  • 真相重于对错 2024-05-22 10:46
    关注

    没必要用死循环,用std::thread提供的功能就可以了

    #include <chrono>
    #include <iostream>
    #include <thread>
     
    void foo()
    {
        // 模拟耗费大量资源的操作
        std::this_thread::sleep_for(std::chrono::seconds(1));
    }
     
    void bar()
    {
        // 模拟耗费大量资源的操作
        std::this_thread::sleep_for(std::chrono::seconds(1));
    }
     
    int main()
    {
        std::cout << "启动第一助手...\n";
        std::thread helper1(foo);
     
        std::cout << "启动第二助手...\n";
        std::thread helper2(bar);
     
        std::cout << "等待助手结束..." << std::endl;
        helper1.join();
        helper2.join();
     
        std::cout << "完成!\n";
    }
    
    
    评论

报告相同问题?

问题事件

  • 创建了问题 5月21日

悬赏问题

  • ¥15 Coze智能助手搭建过程中的问题请教
  • ¥15 12864只亮屏 不显示汉字
  • ¥20 三极管1000倍放大电路
  • ¥15 vscode报错如何解决
  • ¥15 前端vue CryptoJS Aes CBC加密后端java解密
  • ¥15 python随机森林对两个excel表格读取,shap报错
  • ¥15 基于STM32心率血氧监测(OLED显示)相关代码运行成功后烧录成功OLED显示屏不显示的原因是什么
  • ¥100 X轴为分离变量(因子变量),如何控制X轴每个分类变量的长度。
  • ¥30 求给定范围的全体素数p的(p-2)/p的连乘积值
  • ¥15 VFP如何使用阿里TTS实现文字转语音?