package java3; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.ThreadPoolExecutor; /** * 创建线程的方式四:使用线程池 * * 好处: * 1.提高响应速度(减少了创建新线程的时间) * 2.降低资源消耗(重复利用线程池中线程,不需要每次都创建) * 3.便于线程管理 * corePooiSize:核心池的大小 * maximumPoolSize:最大线程数 * keepAliveTime:线程没有任务时最多保持多长时间后会终止 *面试题:创建多线程有几种方式?4种 * @author Suki * @creat 2022-09-15 22:00 */ class NumberThread implements Runnable{ @Override public void run() { for(int i = 0;i<=100;i++){ if(i%2==0){ System.out.println(Thread.currentThread().getName()+":"+i); } } } } class NumberThread1 implements Runnable{ @Override public void run() { for(int i = 0;i<=100;i++){ if(i % 2 !=0){ System.out.println(Thread.currentThread().getName()+":"+i); } } } } public class ThreadPool { public static void main(String[] args) { //1.提供指定线程数量的线程池 ExecutorService service = Executors.newFixedThreadPool(10); //设置线程池的属性 System.out.println(service.getClass());//ThreadPoolExecutor ThreadPoolExecutor service1 =(ThreadPoolExecutor)service; service1.setCorePoolSize(15); //service1.setKeepAliveTime(); //2.执行指定的线程操作。需要提供实现Runnable接口或Callable接口实现类对象 service.execute(new NumberThread());//适用于Runnable接口 service.execute(new NumberThread1());//适用于Runnable接口 //service.submit(Callable callable);//适用于Callable //关闭连接池 service.shutdown(); } }
8.6 创建线程的方式四:使用线程池
最新推荐文章于 2024-11-16 17:49:09 发布