List截取子数组,多线程并发处理插图
List截取子数组,多线程并发处理插图(1)
List截取子数组,多线程并发处理插图(2)

1、创建4个核心线程
2、核心线程不够的话,存到等待队列,可以放3个
3、等待队列满了(7个),创建新线程,可以创建4个(8-4)
4、达到最大线程数(8个),执行拒绝策略

情况一:模拟不截取数组、按照2截取数组

List截取子数组,多线程并发处理插图(3)
List截取子数组,多线程并发处理插图(4)
达到最大线程(8个),4个核心线程,3个等待队列,4个新线程,剩余线程交回给主线程处理

情况二:按照3截取数组

List截取子数组,多线程并发处理插图(5)
List截取子数组,多线程并发处理插图(6)
30 / 3 = 10, 没达到最大线程(8个),4个核心线程,3个等待队列,3个新线程,只开启7个线程

情况三:按照4截取数组

List截取子数组,多线程并发处理插图(7)
List截取子数组,多线程并发处理插图(8)
30 / 4 = 7…2,4个核心线程,3个等待队列,1个新线程,只开启5个线程

情况四:按照5截取数组,6、7、8截取一样

List截取子数组,多线程并发处理插图(9)
List截取子数组,多线程并发处理插图(10)
30 / 5 = 6,4个核心线程,2个等待队列,不需要开线程
List截取子数组,多线程并发处理插图(11)

本站无任何商业行为
个人在线分享 » List截取子数组,多线程并发处理
E-->