ThreadPoolExecutor线程池使用DemoCode
时间: 2024-03-07 22:45:06 浏览: 98
ThreadPoolExecutor是Java中的一个线程池实现类,它可以用来管理和调度多个线程执行任务。下面是一个ThreadPoolExecutor线程池的使用示例代码:
```java
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
public class ThreadPoolDemo {
public static void main(String[] args) {
// 创建一个固定大小的线程池,最多同时执行3个任务
ExecutorService executor = Executors.newFixedThreadPool(3);
// 提交任务给线程池执行
for (int i = 1; i <= 5; i++) {
final int taskId = i;
executor.execute(new Runnable() {
@Override
public void run() {
System.out.println("Task " + taskId + " is running.");
try {
Thread.sleep(2000); // 模拟任务执行时间
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("Task " + taskId + " is completed.");
}
});
}
// 关闭线程池
executor.shutdown();
}
}
```
上述代码中,首先通过`Executors.newFixedThreadPool(3)`创建了一个固定大小为3的线程池。然后使用`executor.execute()`方法提交了5个任务给线程池执行。每个任务都是一个`Runnable`对象,其中的`run()`方法定义了具体的任务逻辑。在示例中,每个任务会打印出自己的编号,并模拟执行2秒钟的时间。最后,通过`executor.shutdown()`关闭线程池。
阅读全文