专注于 JetBrains IDEA 全家桶,永久激活,教程
持续更新 PyCharm,IDEA,WebStorm,PhpStorm,DataGrip,RubyMine,CLion,AppCode 永久激活教程

Java中多线程的使用(超级超级详细)线程池 7

Java中多线程的使用(超级超级详细)线程池 7

什么是线程池?

线程池是一个容纳多个线程的容器,线程池中的线程可以重复使用,无需反复创建线程而消耗过多的资源

*使用多线程的好处:

  • 1、降低消耗,减少了创建和销毁线程的次数,每个线程都可以重复利用,可执行多个任务
    2、提高响应速度,任务可以不需要等到线程创建就可以立即执行
    3、提高线程的可管理性,根据系统的承受能力,调整线程池中工作线程的数目,防止消耗过多的内存,导致服务器死机

线程池的使用

线程池的顶级接口是java.util.concurrent.Excetor,但是严格意义上来讲,Excutor并不是一个线程池,而只是一个执行线程的工具,真正的线程池接口是java.util.concurrent.ExceutorService,要配置一个线程池是比较复杂的,而且配置的线程池很可能不是最优的,因此java.util.cocurrent.Exceutors线程工程里提供了一些静态工厂,生成一些常用的线程池,官方建议使用Exceutors工程来创建线程池对象

创建线程池的方法
public static ExecutorService newFixedThreadPool(int nThreads) :返回线程池对象。(创建的是有界线 程池,也就是池中的线程个数可以指定最大数量)
获取到了一个线程池ExecutorService 对象,那么怎么使用呢,在这里定义了一个使用线程池对象的方法如下: public Future<?> submit(Runnable task) :获取线程池中的某一个线程对象,并执行
Future接口:用来记录线程任务执行完毕后产生的结果。线程池创建与使用。

使用线程池中线程对象的步骤

1、创建线程池对象
2、创建Runable接口子类对象
3、提交Runable接口的子类对象
4、关闭线程池

下面使用一段代码来操作一下下

package ThreadPool;
public class MyThread implements  Runnable {
    @Override
    public void run() {
        System.out.println("我要吃饭");
        try {
            Thread.sleep(500);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        System.out.println("我吃饱了");
    }
}

package ThreadPool;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
public class Main {
    public static void main(String[] args) {
         //创建线程池对象
        ExecutorService executorService = Executors.newFixedThreadPool(2);
        //创建Runable实例对象
        MyThread myThread = new MyThread();
        executorService.submit(myThread);
        executorService.submit(myThread);
        executorService.submit(myThread);
    }
}

运行结果

130_1.png

以上就是线程池的一些基础知识,如有错误还请批评指正,喜欢我的可以点赞收藏,我会不定期跟新文章,可以关注我呀
130_2.png

文章永久链接:https://tech.souyunku.com/38853

未经允许不得转载:搜云库技术团队 » Java中多线程的使用(超级超级详细)线程池 7

JetBrains 全家桶,激活、破解、教程

提供 JetBrains 全家桶激活码、注册码、破解补丁下载及详细激活教程,支持 IntelliJ IDEA、PyCharm、WebStorm 等工具的永久激活。无论是破解教程,还是最新激活码,均可免费获得,帮助开发者解决常见激活问题,确保轻松破解并快速使用 JetBrains 软件。获取免费的破解补丁和激活码,快速解决激活难题,全面覆盖 2024/2025 版本!

联系我们联系我们