线程池问题。。xdjm给个help

hysenwang 2010-09-28 06:04:14
线程池初始化时我创建16个线程,这个时候17个任务过来,有一个任务是没有线程执行,这是我再开辟一个线程执行这个任务,当所有任务都执行完了, 保证线程池有17个线程存活 怎么才能达到这种效果?
...全文
92 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 hysenwang 的回复:]
他的线程数没有上界,即线程数不够时,他会创建新的

thredpool是有maxthread的限制的,如果到达max,这个时候task在队列中等待其他thread task完成,才能继续task, 但是此时我不想让task有任何的等待时间
[/Quote]

如果不想让任务有任何等待的话,那结果就是在大并发时程序崩溃!
hysenwang 2010-09-30
  • 打赏
  • 举报
回复
他的线程数没有上界,即线程数不够时,他会创建新的

thredpool是有maxthread的限制的,如果到达max,这个时候task在队列中等待其他thread task完成,才能继续task, 但是此时我不想让task有任何的等待时间
hysenwang 2010-09-30
  • 打赏
  • 举报
回复
用了jdk1.5
的thredpool
bastengao 2010-09-28
  • 打赏
  • 举报
回复
你自己开辟的线程,一般达不到复用的效果,即根本起不到池的作用。那要看你用的是什么线程池,cachedTrheadPool 在一些类似于楼主的描述。他的线程数没有上界,即线程数不够时,他会创建新的,但如果线程闲置,同时也会释放。但会保持一个最基本的线程数。

23,404

社区成员

发帖
与我相关
我的任务
社区描述
Java 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧