爱玩游戏的爪哇 2022-12-27 22:01 采纳率: 33.3%
浏览 46
已结题

项目中使用多线程遇到的问题

项目中不同业务模块都会使用到线程池;a模块会执行大量sql,基本会长时间占用所有线程;由于b模块是在页面上展示查询数据,这种情况就会导致b模块超过一分钟还没查出来会报错;有什么方案可以应对这种情况呢?

  • 写回答

6条回答 默认 最新

  • 嗷呜大嘴狼 2022-12-28 10:06
    关注

    在这种情况下,你可以考虑使用两个线程池,分别用于执行 a 模块和 b 模块的任务。这样,a 模块就不会占用所有线程,b 模块就可以获得足够的线程资源来执行任务。

    另外,你还可以考虑使用调度策略来优化线程池的使用。例如,你可以设置 b 模块的任务优先级比 a 模块的任务高,这样就可以保证 b 模块的任务能够优先得到执行。

    此外,你还可以考虑使用单独的线程或者队列来处理 b 模块的任务,以保证它们能够及时得到执行。

    希望这些建议能帮到你。

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

报告相同问题?

问题事件

  • 系统已结题 1月5日
  • 已采纳回答 12月28日
  • 创建了问题 12月27日

悬赏问题

  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解