日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java线程池怎么创建_java中的线程池,如何创建?

發布時間:2023/12/10 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java线程池怎么创建_java中的线程池,如何创建? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Java中的線程池它是線程的容器,或者(換句話說,它是具有執行任務能力的線程的集合)。

我們可以使用ThreadPool框架來定位(或實現)線程池。

線程池可以包含多個線程。每當我們執行任何任務時,線程就會從線程池中出來并完成該任務,然后再次返回線程池。

如果您不使用線程池,那么...

您需要一次又一次地創建重復的線程,并且每次都會浪費內存并破壞對象,從而降低性能。如果請求數量增加/減少,那么我們需要創建更多數量的線程。

如果您使用線程池,那么...

您不需要一次又一次地創建重復的線程,也不會浪費內存,也不必每次都銷毀對象,因此性能將得到提高。

如果請求數量增加/減少,那么我們不需要創建更多線程。

示例

ThreadPool包含100個線程,請求數為200,然后將有100個請求解決第一個100個請求,然后在完成任務線程后將釋放它們并返回線程池,然后有100個線程將解決下一個100個請求。

在線程池中,我們可以討論三件事:如何創建一個ThreadPool?

如何向線程池中的線程提交任務?

如何關閉線程池?

讓我們看看如何創建線程池,ExecutorService?es?=?Executors.new?FixedThreadPool(int);

int是線程池中的線程數

讓我們看看如何使用來向線程池中的線程提交任務submit()。ExecutorServiceObject?(es)?=>?es.submit(Runnable?obj);

讓我們看看如何關閉threadPool?ExecutorServiceObject?(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?Articles>java?ThreadPoolClass

Thread[pool-1-thread-1,5,main]First?Name:?Preeti

Thread[pool-1-thread-1,5,main]Second?Name:?Jain

總結

以上是生活随笔為你收集整理的java线程池怎么创建_java中的线程池,如何创建?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。