1、什么是线程池
线程池就是提前创建若干个线程,如果有任务需要处理,线程池里的线程就会处理任务,处理完之后线程并不会被销毁,而是等待下一个任务。由于创建和销毁线程都是消耗系统资源的,所以当你想要频繁的创建和销毁线程的时候就可以考虑使用线程池来提升系统的性能。
2、四种线程池的创建:
(1) newCachedThreadPool 创建一个可缓存线程池
(2) newFixedThreadPool 创建一个定长线程池,可控制线程最大并发数。
(3) newScheduledThreadPool 创建一个定长线程池,支持定时及周期性任务执行。
(4) newSingleThreadExecutor 创建一个单线程化的线程池,它只会用唯一的工作线程来执行任务。
3、线程池的优点
(1) 重用存在的线程,减少对象创建销毁的开销。
(2) 可有效的控制最大并发线程数,提高系统资源的使用率,同时避免过多资源竞争,避免堵塞。
(3) 提供定时执行、定期执行、单线程、并发数控制等功能。
更多技术分享,请持续关注云和数据!
线程池就是提前创建若干个线程,如果有任务需要处理,线程池里的线程就会处理任务,处理完之后线程并不会被销毁,而是等待下一个任务。由于创建和销毁线程都是消耗系统资源的,所以当你想要频繁的创建和销毁线程的时候就可以考虑使用线程池来提升系统的性能。
2、四种线程池的创建:
(1) newCachedThreadPool 创建一个可缓存线程池
(2) newFixedThreadPool 创建一个定长线程池,可控制线程最大并发数。
(3) newScheduledThreadPool 创建一个定长线程池,支持定时及周期性任务执行。
(4) newSingleThreadExecutor 创建一个单线程化的线程池,它只会用唯一的工作线程来执行任务。
3、线程池的优点
(1) 重用存在的线程,减少对象创建销毁的开销。
(2) 可有效的控制最大并发线程数,提高系统资源的使用率,同时避免过多资源竞争,避免堵塞。
(3) 提供定时执行、定期执行、单线程、并发数控制等功能。
更多技术分享,请持续关注云和数据!