可以使用Java的Executor框架来实现动态线程池。可以使用ThreadPoolExecutor类来创建线程池。可以设置核心线程数、最大线程数、线程存活时间等参数。
示例代码:
int corePoolSize = 5;
int maximumPoolSize = 10;
long keepAliveTime = 5000;
TimeUnit unit = TimeUnit.MILLISECONDS;
BlockingQueue<Runnable> workQueue = new ArrayBlockingQueue<Runnable>(5);
ThreadPoolExecutor threadPool = new ThreadPoolExecutor(corePoolSize, maximumPoolSize, keepAliveTime, unit, workQueue);
您可以使用threadPool.execute(Runnable)来向线程池中提交任务。
另外,您还可以使用Executors类中的静态方法newCachedThreadPool()或newFixedThreadPool(int)来创建线程池,这样可以避免手动设置参数的麻烦。
示例代码:
Executor executor =Executors.newCachedThreadPool();
如果使用Executors来创建线程池,可能需要手动终止线程池,可以使用shutdown()方法。
Executor.shutdown();