Java多线程-线程池.docx
《Java多线程-线程池.docx》由会员分享,可在线阅读,更多相关《Java多线程-线程池.docx(3页珍藏版)》请在文库网上搜索。
1、JAVA多线程线程是一个动态执行的过程,它也是由产生到死亡的过程。创建线程的几种方式:1. 通过实现接口Runnable接口;2. 通过继承Thread类本身;3. 通过Callable和Future来创建线程;线程池(容纳多个线程的容器)的应用:优点:(减少资源开销,提高响应速度)具体解释:线程一次创建可以反复使用(减少资源占用),减少频繁创建与销毁(提高程序效率);详见:我们为什么需要用到线程池呢?每次用的时候手动创建不行吗?在java中,如果每个请求到达就创建一个新线程,开销是相当大的。在实际使用中,创建和销毁线程花费的时间和消耗的系统资源都相当大,甚至可能要比在处理实际的用户请求的时间
2、和资源要多的多。除了创建和销毁线程的开销之外,活动的线程也需要消耗系统资源。如果在一个jvm里创建太多的线程,可能会使系统由于过度消耗内存或“切换过度”而导致系统资源不足。为了防止资源不足,需要采取一些办法来限制任何给定时刻处理的请求数目,尽可能减少创建和销毁线程的次数,特别是一些资源耗费比较大的线程的创建和销毁,尽量利用已有对象来进行服务。(为什么)线程池主要用来解决线程生命周期开销问题和资源不足问题。通过对多个任务重复使用线程,线程创建的开销就被分摊到了多个任务上了,而且由于在请求到达时线程已经存在,所以消除了线程创建所带来的延迟。这样,就可以立即为请求服务,使用应用程序响应更快;另外,通过适当的调整线程中的线程数目可以防止出现资源不足的情况。(什么用)3、线程池都是通过线程池工厂创建,再调用线程池中的方法获取线程,再通过线程去执行任务方法。程序调用线程线程池线程池工厂 线程经历的几个状态:死亡状态阻塞状态运行状态就绪状态New创建线程对象Sleep(),wait()Yield()Start()被cpu调度程序选中,获得执行权Run()执行完,或程序出现问题
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5 文币 0人已下载
下载 | 加入VIP,免费下载 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 多线程 线程