在Java中,可以使用`ExecutorService`接口和`Executors`类来创建固定大小的线程池。固定线程池中的线程数量是固定的,一旦创建后就不会改变。
以下是使用固定线程池的示例代码:
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
public class Main {
    public static void main(String[] args) {
        // 创建固定大小的线程池,线程数量为3
        ExecutorService executor = Executors.newFixedThreadPool(3);
        // 提交任务给线程池
        for (int i = 1; i <= 5; i++) {
            final int taskId = i;
            executor.submit(new Runnable() {
                public void run() {
                    System.out.println("Task " + taskId + " executed by " + Thread.currentThread().getName());
                }
            });
        }
        // 关闭线程池
        executor.shutdown();
    }
}
在上述示例中,通过调用`Executors.newFixedThreadPool(3)`创建了一个固定大小为3的线程池。然后,使用`executor.submit()`方法提交5个任务给线程池执行。每个任务都是一个`Runnable`对象,用于输出任务的编号和执行线程的名称。
最后,调用`executor.shutdown()`方法关闭线程池。这将停止接受新的任务,并等待已提交的任务执行完成。
使用固定线程池可以控制并发线程的数量,适用于需要限制并发线程数量的场景。通过合理设置线程池大小,可以提高并发性能,并防止由于线程过多导致的资源耗尽或性能下降。
 
             
             
       
      
 
                   
                   
                   
                   
                  
 
                     
                     
                     
                     
                     
                     
                     
                     
       
         京公网安备 11010802030320号
京公网安备 11010802030320号