第十四章《多线程》第8节:线程池
admin
2024-03-05 12:25:49

系统启动一个线程的成本是比较高的,因为启动线程的操作要与操作系统交互。如果程序中需要创建大量生存期较短的线程,那么使用线程池将会大幅度提高程序的运行效率。线程池中保存了一定数目可重复使用的线程,因此可以在使用时直接从线程池中获得一个线程,用完之后还可以把线程放回线程池以便后面再次使用。

线程池在系统启动时就创建大量线程,程序将一个Runnable或Callable实现类对象传递给线程池,线程池就会启动一个空闲线程来执行它们的run()方法或call()方法。当run()方法或call()方法执行完之后,线程并不会死亡,而是再次返回线程池中等待执行下一个对象的run()方法或call()方法。

使用线程池还有一个好处就是能够控制系统中并发线程的数量。当系统包含大量并发线程时,会导致系统性能下降,而线程池的最大线程数参数控制系统中并发线程不会超过设定值。

14.8.1使用Executors产生线程池

Java语言使用ExecutorService和ScheduledExecutorService这两个接口来表示线程池,而使用Executors类生成线程池。Executors位于java.util.concurrent包下,这个类提供了一些静态方法来产生线程池,这些方法如表14-6所示。

表14-6 Executors类的方法

相关内容

热门资讯

从文案到视频,这几台一体设计台... 当灵感在深夜突然闪现,你需要的不是频繁重启的老旧设备,而是一台响应迅速、稳定输出的创作伙伴。对于内容...
性价比爆棚!这些处理器让笔记本... 图书馆里翻动笔记的声音与屏幕上代码滚动的光标交织,宿舍深夜的蓝光映照着专注的脸庞,对一群追求效率又精...
中国经济“稳进新韧” 2025... 中国2025年全年经济增长5%,完成了年初设定的预期目标。 国家统计局1月19日发布的数据显示...
离婚协议书样式 离婚协议书样式...  离婚协议书样式  协议人(男方): ,身份证号:  协议人(女方): ,身份证号:  协议人双方于...
离婚协议书的内容 离婚协议书的...   离婚协议书的内容  (1)明确双方同意解除婚姻关系。  (2)明确子女的抚养权:子女抚养权可以是...