java基础——线程池
Posted zsbenn
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java基础——线程池相关的知识,希望对你有一定的参考价值。
package threadpool; /* 创建线程的方式四:使用线程池 1.提供指定线程数量的线程池 2.执行指定的线程的操作,需要实现Runnable接口或Callable接口实现类的对象 3.关闭连接池 好处: 1.提高响应速度,减少了创建线程的时间 2.降低资源消耗(重复利用线程池中线程,不需要每次都创建) 3.便于线程管理,设置线程池 @author zsben @create 2020-01-05 17:05 */ import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.ThreadPoolExecutor; class NumThread implements Runnable{ private int number = 100; @Override public void run() { for(int i=2;i<=100;i+=2){ System.out.println(Thread.currentThread().getName()+":"+i); } } } class NumThread1 implements Runnable{ private int number = 100; @Override public void run() { for(int i=1;i<=100;i+=2){ System.out.println(Thread.currentThread().getName()+":"+i); } } } public class ThreadPool { public static void main(String[] args) { NumThread numThread = new NumThread(); NumThread1 numThread1 = new NumThread1(); //1.提供指定线程数量的线程池,进行转型 ExecutorService executorService = Executors.newFixedThreadPool(10); ThreadPoolExecutor service1 = (ThreadPoolExecutor)executorService; //设置线程池的属性,进行管理 service1.setCorePoolSize(15); //service1.setKeepAliveTime(); //2.执行指定的线程的操作,需要实现Runnable接口或Callable接口实现类的对 executorService.execute(numThread);//适合Runnable executorService.execute(numThread1); //executorService.submit();//适合Callable //3.线程池关闭 executorService.shutdown(); } }
后续博客 https://www.cnblogs.com/zzuli/p/9386463.html
https://blog.csdn.net/weixin_40271838/article/details/79998327
https://blog.csdn.net/weixin_40990818/article/details/93408523
以上是关于java基础——线程池的主要内容,如果未能解决你的问题,请参考以下文章
newCacheThreadPool()newFixedThreadPool()newScheduledThreadPool()newSingleThreadExecutor()自定义线程池(代码片段