循环体中将任务加入到线程池队列踩坑

问题描述

new了一个线程池并设置了线程大小后,假设线程大小为3,任务数量远远大于线程设置大小。那么任务就会自动加入到队列中。运行后发现,除了前面的3个任务可以正常执行,其它执行的任务都为同一个任务。

原因

可能是存放在线程池队列中的对象都是同一个对象

相关代码

对象queryVo必须放在循环体内-------原因:如果放在循环体外,当线程池设置的大小没有当前任务多时,任务会存放在线程池的队列中,而这时候,存放在线程池队列中的对象都是同一个对象。这样就无法根据不同的参数执行不同的任务了。
另外,最好后面可以显示关闭线程池,多层嵌套循环也应该注意该问题
循环体中将任务加入到线程池队列踩坑

相关文章:

  • 2021-07-19
  • 2021-07-02
  • 2022-12-23
  • 2021-08-18
  • 2021-08-14
  • 2022-12-23
  • 2021-10-24
猜你喜欢
  • 2021-06-05
  • 2021-06-20
  • 2021-09-13
  • 2021-12-08
相关资源
相似解决方案