Java 线程池

本文详细介绍了Java中线程池的概念和技术实现,包括线程池的创建方式、使用场景及其实现类ExecutorService的多种方法。同时,文章还提供了一个简单的示例程序,展示了如何使用ScheduledExecutorService来调度任务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

线程池是顶先创建线程的一项技术, 线程池在还没有任务到来之前, 创建一定数量的线程, 放入空闲队列中,然后对这些资源进行复用。减少频繁的创建和销毁对象

 

jdk1.5 版本以上版本提供了现成的线程池

 

Java里面线程池的顶级接口是Executor,是一个执行线程的工具

线程池接口是ExecutorService

 

java.util.concurrent包   :并发编程中很常用的实用工具类

Executor接口

   执行已提交的Runnable任务的对象

ExecutorService接口

    ExecutorService提供了管理终止的方法,以及可以为跟踪一个或多个异步任务执行状况而生成的  Future方法

 

Executors类

此包中所定义的Executor 、 ExecutorService等工厂和实用方法。

 

 

package com.vince;

import java.util.concurrent.*;

/**
 * jdk1.5 以上才能使用,方便
 * 前面两种较常用。。。
 */
public class ThreadDemo5 {
    public static void main(String[] args) {
        //创建线程池(4种)
        //1.创建一个单线程的线程池
        //ExecutorService es= Executors.newSingleThreadExecutor();
        //创建固定大小的线程池
        //ExecutorService es= Executors.newFixedThreadPool(1);
        //创建一个可缓存的线程池,如果线程池的大小超过了处理任务所需要的线程,那么就会回收部分空闲(60s不执行任务)的线程,当任务数增加时,
        //此线程池又可以智能的添加新线程来处理,此线程池不会对线程池大小做限制,线程池大小完全依赖于操作系统(或者说JVM)能够创建的最大线程大小
        //ExecutorService es=Executors.newCachedThreadPool();

        //ExecutorService es= Executors.newScheduledThreadPool(3);
        ScheduledExecutorService es=Executors.newScheduledThreadPool(3);
        //ExecutorService executorService = Executors.newCachedThreadPool();
        //es.execute(new MyRunable6());
        //es.execute(new MyRunable6());
        es.schedule(new MyRunable6(),3000,TimeUnit.MILLISECONDS);
        es.shutdown();
    }
}
class MyRunable6 implements Runnable{
    public  void run(){
        for(int i=0;i<10;i++){
            System.out.println(Thread.currentThread().getName()+"----"+i);
            try{
                Thread.sleep(300);
            }catch(InterruptedException e){
                e.printStackTrace();
            }
        }
    }
    /**
     * 1.进程与线程
     * 2.线程的基本使用
     * 3.线程休眠
     * 4.join与中断线程
     * 5.守护线程与yield
     * 6.其他方法与优先级
     * 7.线程同步
     * 8.死锁
     * 9.生产者与消费者应用案例
     * 10.线程生命周期
     * 11.线程池
     */
}

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值