1
D3EP 2017-06-03 11:51:21 +08:00 via Android
判断 queue 的数量是为了什么?没明白啥意思。
|
2
0915240 2017-06-03 12:19:58 +08:00 via iPhone
没明白 直接提交有啥问题
|
3
hand515 2017-06-03 13:59:17 +08:00
blockingQueue 阻塞队列不满足吗?
|
4
id4alex OP @0915240
比如有 1W、10W、100W 条记录全部提交进去是不是不太好? 所以我选择分批提交, 当 queue 队列的 size 达到一个值的时候再添加任务。 那么问题来了, 怎么自动提交任务的实现比较优雅 |
6
0915240 2017-06-03 19:12:45 +08:00 via iPhone
@id4alex 让线程池去帮你管理啊 自己管理 queue 不如线程池管理 配置高线程池参数就行了。
不知道我有没有好好审题 还是说你怕一下子请求别人过多不好的感觉?如果是这种的话可以控制请求流速。用不着分批吧,细水长流可以的。 不知道现在有没有身体问题。 |
8
Buffer2Disk 2017-06-03 19:37:58 +08:00
不是很懂你说的啥意思,线程池默认就是可以帮你去管理线程的,你可以试试下面这个。
newFixedThreadPool 创建固定大小的线程池。每次提交一个任务就创建一个线程,直到线程达到线程池的最大大小。线程池的大小一旦达到最大值就会保持不变,如果某个线程因为执行异常而结束,那么线程池会补充一个新线程。 |
9
hand515 2017-06-03 20:03:01 +08:00
ArrayBlockingQueue 有界阻塞队列,满了就阻塞插入操作
|