Java submit 关键字用法详解:线程池任务提交
在 Java 中,'submit' 关键字通常用于将任务提交给线程池进行执行。它是 ExecutorService 接口中定义的一个方法。
使用 'submit' 关键字的一般语法如下:
Future<?> submit(Runnable task)
这个方法接受一个 Runnable 对象作为参数,并返回一个 Future 对象。Runnable 对象代表了一个要执行的任务,Future 对象用于获取任务的执行结果。
下面是一个示例代码,展示如何使用 'submit' 关键字:
import java.util.concurrent.*;
public class Main {
public static void main(String[] args) {
// 创建线程池
ExecutorService executor = Executors.newFixedThreadPool(5);
// 提交任务给线程池执行
Future<?> future = executor.submit(new MyTask());
// 等待任务执行完成并获取结果
try {
Object result = future.get();
System.out.println("任务执行结果:" + result);
} catch (InterruptedException | ExecutionException e) {
e.printStackTrace();
}
// 关闭线程池
executor.shutdown();
}
static class MyTask implements Runnable {
@Override
public void run() {
// 执行任务的代码
System.out.println("任务正在执行...");
}
}
}
在上面的示例中,我们首先创建了一个线程池,然后使用 'submit' 关键字将一个实现了 Runnable 接口的任务对象提交给线程池执行。我们还使用 Future 对象的 get() 方法来等待任务执行完成并获取执行结果。
需要注意的是,'submit' 方法可以接受并执行 Callable 对象,它与 Runnable 对象类似,但可以返回一个结果。Callable 对象可以通过 ExecutorService 的 submit(Callable
原文地址: http://www.cveoy.top/t/topic/fARz 著作权归作者所有。请勿转载和采集!