
多线程
多线程
starandsea
这个作者很懒,什么都没留下…
展开
-
线程池的任务是顺序执行的吗?
不能保证顺序执行。core线程满负荷且队列也满又有新任务来的时候,会开启临时线程,这个新任务直接到临时线程处理,不进队列,比队列里的后来但是早调度。另外,交给CPU调度即便是有先后顺序,如果时间相差很小,也不一定是按交给CPU调度的顺序来执行。...原创 2021-01-10 23:10:16 · 1943 阅读 · 0 评论 -
简述线程池的工作过程
一开始来任务,开启核心线程,如果线程池里的线程数小于core size,则创建核心线程,即时有空闲的核心线程,也是创建新线程,直到达到core size。再来新任务时,如果核心线程有空闲线程,则由空闲核心线程执行;如果没有空闲的核心线程,则加入到队列等待调度。当队列满时,又来新任务,则开启临时线程,这个新来的任务由临时线程处理。之后,临时线程和核心线程一起处理队列中的任务。如果核心线程和临时线程都满负荷且队列已满,又有新任务来,则按reject策略处理(RejectedExecuti原创 2021-01-10 23:06:10 · 390 阅读 · 0 评论