public class test { public static void main(String[] args) throws UnsupportedEncodingException, InterruptedException { // 创建一个固定大小的线程池 ExecutorService service = Executors.newFixedThreadPool(3); ss t1=new ss(); service.invokeAll(t1); // 关闭启动线程 service.shutdown(); // 等待子线程结束,再继续执行下面的代码 service.awaitTermination(Long.MAX_VALUE, TimeUnit.DAYS); //System.out.println("all thread complete"); } } class ss implements Callable { @Override public String call() { System.out.println(Thread.currentThread().getName()+"执行call方法"); return null; } }
时间: 2024-02-15 11:27:00 浏览: 364
这段代码是一个Java多线程示例,其中主要涉及了线程池的使用。具体来说,代码中创建了一个固定大小为3的线程池ExecutorService,然后定义了一个实现了Callable接口的类ss,该类的call()方法中输出了当前线程的名称,并返回了一个null值。接着,使用线程池的invokeAll方法来执行该任务,最后等待所有子线程执行完毕后关闭线程池并输出提示信息。该示例主要展示了Java多线程编程中线程池的使用方法。
阅读全文