线程池的应用场景和管理
来源:互联网 发布:安全投资卫士炒股软件 编辑:程序博客网 时间:2024/05/21 12:49
应用场景:线程的创建和销毁是一个耗时的操作。如果在程序中频繁的创建和销毁线程,会对程序的反应速度造成严重的影响。有时候可能导致crash掉。如果在频繁的使用线程就可以使用线程池代替。
管理方式:
当一个任务被添加到线程池的时候:
1、如果此时线程池中的线程数量小于corePoolsize(线程池维护线程的最小数量),即使线程池中的线程都处于空闲状态,也要创建新的线程来处理;
2、如果此时线程池中的线程数量等于corePoolsize,缓存队列也没有满,那么任务就被放到缓存队列中;
3、如果大于corePoolsize,缓存队列已满,并且线程池中的数量小于maxMumPoolsize(线程池维护线程的最大数量),新建线程来处理被添加的任务。
4、如果大于corePoolsize,缓存队列已满,并且线程池中的数量等于maxMumPoolsize,那么就通过handle所指定的策略来处理任务。
5、如果大于corePoolsize,并且线程的空闲时间超过了KeepAliveTime(线程池维护线程所允许的空闲时间),线程将被终止。
1 0
- 线程池的应用场景和管理
- 线程池的应用场景和管理
- 线程应用的场景
- 线程池的作用,应用场景与原理
- Android线程管理之ThreadLocal理解及应用场景
- iOS 开发之多线程的应用场景
- java线程池种类和使用场景
- 封装的的应用场景和步骤
- Httpclient线程池的管理和利用
- java线程wait()方法的一个应用场景
- SurfaceView 和View 的应用场景
- 回声消除的原理和应用场景
- CountDownLatch和CyclicBarrier的应用场景
- Mongo DB的分析和应用场景
- 消息中间件的意义和应用场景
- HttpServletResponse 和 HttpServletRequest的应用场景
- 关于Runnable 和 Thread的应用场景
- 多进程和多线程的应用场景
- Single Number I & II
- 构建多线程的服务器
- CRF 简介入门
- vc++网络安全编程范例(17)-open ssl 实现文件加密与解密
- js 添加列 删除列
- 线程池的应用场景和管理
- 1111
- malloc()和free()函数的讲解以及相关内存泄漏问题
- http://www.cnblogs.com/dolphin0520/archive/2011/08/25/2153720.html
- cocos2dx 源目录及基本类简介
- MSG_OOB、MSG_PEEK、MSG_DONTROUTE
- java类读取spring容器中的bean
- hdu3001 三进制状态压缩+dp
- Java生成验证码(包含gif动画验证码)