jacklikerock 2023-07-12 08:06 采纳率: 50%
浏览 18
已结题

线程池与线程相关问题

有一个疑问,多线程处理为什么不启动固定个数的线程,在每个线程里死循环处理,这样固定的这几个线程会一直处理。为什么要用线程池呢?

  • 写回答

3条回答 默认 最新

  • 於黾 2023-07-12 08:40
    关注

    系统开销什么的,对于一般的程序员来说根本不是问题,因为我们做的都是一台PC上就跑这么一个进程,把cpu吃光也无所谓,根本不需要考虑给别的进程留资源的问题
    就从其它角度看看线程池到底有什么好处
    1.动态线程
    线程池的核心线程也是一直占用资源的,所以这方面和写死几个线程一样
    但是线程池还有个最大线程数量的设置,当你的任务数非常多的时候,它可以动态的启动更多的线程来执行任务
    这里你写死线程是做不到的
    2.任务队列
    如果你写死线程,那么你需要自己维护一个队列用来存数据,而且逻辑通常是固定的
    也就是说你所有的线程只能执行同一类型的任务
    而线程池有任务队列,你可以直接把匿名函数丢进线程池里执行,这样更灵活

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 7月25日
  • 已采纳回答 7月17日
  • 创建了问题 7月12日

悬赏问题

  • ¥30 设计一个图形用户界面来控制你机械臂的运动
  • ¥30 3d打印机无法识别到SD卡,如何解决?(相关搜索:格式化)
  • ¥15 RPG游戏架构设计和开发方法
  • ¥15 python 计算股权结构
  • ¥30 为什么会失败呢,该如何调整
  • ¥15 前端返回pdf时不显示内容
  • ¥50 如何在不能联网影子模式下的电脑解决usb锁
  • ¥20 服务器redhat5.8网络问题
  • ¥15 如何利用c++ MFC绘制复杂网络多层图
  • ¥20 要做柴油机燃烧室优化 需要保持压缩比不变 请问怎么用AVL fire ESE软件里面的 compensation volume 来使用补偿体积来保持压缩比不变