ThreadPoolExecutor中执行方法
时间: 2024-01-17 16:19:31 浏览: 81
ThreadPoolExecutor类中的执行方法是`execute()`和`submit()`。
1. `execute()`方法用于提交一个Runnable任务给线程池执行,它没有返回值。示例代码如下:
```java
ThreadPoolExecutor executor = new ThreadPoolExecutor(corePoolSize, maximumPoolSize, keepAliveTime, TimeUnit.SECONDS, new LinkedBlockingQueue<>());
executor.execute(new Runnable() {
@Override
public void run() {
// 执行任务的代码
}
});
```
2. `submit()`方法用于提交一个Callable任务给线程池执行,并返回一个Future对象,可以通过该对象获取任务的执行结果。示例代码如下:
```java
ThreadPoolExecutor executor = new ThreadPoolExecutor(corePoolSize, maximumPoolSize, keepAliveTime, TimeUnit.SECONDS, new LinkedBlockingQueue<>());
Future<String> future = executor.submit(new Callable<String>() {
@Override
public String call() throws Exception {
// 执行任务的代码
return "任务执行结果";
}
});
```
可以通过`future.get()`方法获取任务的执行结果。
阅读全文