站长工具免费,手机设计绘图软件app,一个主页三个子页的html网页,广州网站建设网站推广Java中的线程池它是线程的容器#xff0c;或者(换句话说#xff0c;它是具有执行任务能力的线程的集合)。我们可以使用ThreadPool框架来定位(或实现)线程池。线程池可以包含多个线程。每当我们执行任何任务时#xff0c;线程就会从线程池中出来并完成该任务#xff0c;然后…Java中的线程池它是线程的容器或者(换句话说它是具有执行任务能力的线程的集合)。我们可以使用ThreadPool框架来定位(或实现)线程池。线程池可以包含多个线程。每当我们执行任何任务时线程就会从线程池中出来并完成该任务然后再次返回线程池。如果您不使用线程池那么...您需要一次又一次地创建重复的线程并且每次都会浪费内存并破坏对象从而降低性能。如果请求数量增加/减少那么我们需要创建更多数量的线程。如果您使用线程池那么...您不需要一次又一次地创建重复的线程也不会浪费内存也不必每次都销毁对象因此性能将得到提高。如果请求数量增加/减少那么我们不需要创建更多线程。示例ThreadPool包含100个线程请求数为200然后将有100个请求解决第一个100个请求然后在完成任务线程后将释放它们并返回线程池然后有100个线程将解决下一个100个请求。在线程池中我们可以讨论三件事如何创建一个ThreadPool如何向线程池中的线程提交任务如何关闭线程池让我们看看如何创建线程池ExecutorService es Executors.new FixedThreadPool(int);int是线程池中的线程数让我们看看如何使用来向线程池中的线程提交任务submit()。ExecutorServiceObject (es) es.submit(Runnable obj);让我们看看如何关闭threadPoolExecutorServiceObject (es) es.shutdown();示例import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;class ThreadPoolClass implements Runnable{String s;ThreadPoolClass(String str){s str;}public static void main(String[] args){ExecutorService es Executors.newFixedThreadPool(1);es.submit(new ThreadPoolClass(First Name: Preeti));es.submit(new ThreadPoolClass(Second Name: Jain));es.shutdown();}public void run(){System.out.println(Thread.currentThread() s);}}输出结果D:\Java Articlesjava ThreadPoolClassThread[pool-1-thread-1,5,main]First Name: PreetiThread[pool-1-thread-1,5,main]Second Name: Jain