在Java中,您可以使用Executors
類中的newFixedThreadPool()
方法創建一個固定大小的線程池。這個方法接受一個參數,表示線程池中的最大線程數。以下是一個簡單的示例:
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
public class FixedThreadPoolExample {
public static void main(String[] args) {
// 創建一個固定大小為3的線程池
ExecutorService fixedThreadPool = Executors.newFixedThreadPool(3);
// 提交任務到線程池
for (int i = 0; i < 10; i++) {
final int taskNumber = i;
fixedThreadPool.submit(() -> {
System.out.println("Task " + taskNumber + " is executed by thread " + Thread.currentThread().getName());
});
}
// 關閉線程池
fixedThreadPool.shutdown();
}
}
在這個示例中,我們創建了一個固定大小為3的線程池,然后提交了10個任務到線程池。線程池會自動分配任務給空閑的線程,直到所有任務完成。最后,我們調用shutdown()
方法關閉線程池。