用Java写一个executors.newfixedthreadpool线程池用法
时间: 2023-07-07 17:44:06 浏览: 121
ThreadPoolExecutor线程池的使用方法
5星 · 资源好评率100%
好的,下面是用Java写一个executors.newfixedthreadpool线程池的用法:
```java
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
public class FixedThreadPoolExample {
public static void main(String[] args) {
// 创建一个固定大小的线程池,大小为3
ExecutorService executor = Executors.newFixedThreadPool(3);
// 提交10个任务给线程池执行
for (int i = 1; i <= 10; i++) {
// 创建任务
Runnable task = new Task(i);
// 提交任务给线程池执行
executor.submit(task);
}
// 关闭线程池
executor.shutdown();
}
}
// 任务类
class Task implements Runnable {
private int taskId;
public Task(int id) {
this.taskId = id;
}
@Override
public void run() {
System.out.println("Task #" + this.taskId + " is running in " + Thread.currentThread().getName());
}
}
```
在这个示例中,我们使用`ExecutorService`接口创建了一个固定大小为3的线程池。然后,我们提交了10个任务给线程池执行。每个任务都是一个`Task`对象,实现了`Runnable`接口,用于执行具体的业务逻辑。在`run`方法中,我们打印了当前任务的编号和执行线程的名称。最后,我们调用`shutdown`方法关闭线程池。
阅读全文