【说站】Java Executors中的四种线程池
2024-12-14
14
Java Executors中的四种线程池
1、线程池说明
newCachedThreadPool创建缓存线程池,如果线程池的长度超过处理需要,则可以灵活回收空闲线程,如果不能回收,则可以创建新的线程。
newFixedThreadPool创建一个定长的线程池,可以控制线程的并发数,超过的线程在队列中等待。
newScheduledThreadPool建立固定长线程池,支持定时和周期任务的执行。
newSingleThreadExecutor创建一个单线程化的线程池,只能用唯一的工作线程执行任务,保证所有任务按指定顺序执行。
2、实例
class ThreadDemo extends Thread { @Override public void run() { System.out.println(Thread.currentThread().getName() + "正在执行"); } } class TestFixedThreadPool { public static void main(String[] args) { //创建一个可重用固定线程数的线程池 ExecutorService pool = Executors.newFixedThreadPool(2); //创建实现了Runnable接口对象,Thread对象当然也实现了Runnable接口 Thread t1 = new ThreadDemo(); Thread t2 = new ThreadDemo(); Thread t3 = new ThreadDemo(); Thread t4 = new ThreadDemo(); Thread t5 = new ThreadDemo(); //将线程放入池中进行执行 pool.execute(t1); pool.execute(t2); pool.execute(t3); pool.execute(t4); pool.execute(t5); //关闭线程池 pool.shutdown(); } }
以上就是Java Executors中的四种线程池,希望对大家有所帮助。更多Java学习指路:Java基础
赞一波!2
相关文章
- 【说站】java守护线程的注意事项
- 【说站】Java用户线程是什么
- 【说站】java sleep()和wait()的区别
- 【说站】Java runnable和callable的异同
- 【说站】java进程和线程的关系
- 【说站】Java守护线程和用户线程的区别
- 【说站】Python bs4的四种对象
- 【说站】python线程安全的介绍及解决方法
- 【说站】python线程阻塞的解决
- 【说站】java io和nio的区别
- 【说站】java枚举类型的原理
- 【说站】java静态方法和非静态方法的介绍
- 【说站】java单例模式中的Holder是什么
- 【说站】java单例中饿汉模式的使用
- 【说站】Java反序列化如何理解
- 【说站】java懒汉和饿汉模式的区别
- 【说站】Java序列化是什么
- 【说站】java单例中的饱汉模式实现
- 【说站】java中&和&&有什么区别
- 【说站】java如何在表格添加水印
文章评论
评论问答