线程池

什么是线程池? 为什么要使用它?

  • 在程序启动的时候就创建若干线程来响应处理,它们被称为线程池,里面的线程叫工作线程(JDK1.5开始提供Excutor)

  • 创建线程要花费昂贵的资源和时间,如果任务来了才创建线程那么响应时间会变长,而且一个进程能创建的线程数有限,所以可以创建线程池,然后往里面提交需要开启的线程即可

线程池中断策略

线程池中的线程容器已经放不下先的任务了,必须要有一个相应的策略来处理

ThreadPoolExecutor内部的4个中断策略

1. Abort

默认策略,中止新加入的任务

2. CallerRuns

调用者运行,它既不会丢弃任务,也不会抛弃异常,它会把任务推回到调用者那里以缓解任务流

3. Discard

默认放弃这个任务

4. DiscardOldest

遗弃最老的的任务

results matching ""

    No results matching ""