欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

java中的線(xiàn)程指的是什么-創(chuàng)新互聯(lián)

今天就跟大家聊聊有關(guān)java中的線(xiàn)程指的是什么,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

創(chuàng)新互聯(lián)建站2013年開(kāi)創(chuàng)至今,是專(zhuān)業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站、成都外貿(mào)網(wǎng)站建設(shè)公司網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元定安做網(wǎng)站,已為上家服務(wù),為定安各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話(huà):13518219792

線(xiàn)程(英文:thread),臺(tái)灣地區(qū)譯為執(zhí)行緒(英文:thread of execution)、緒程,操作系統(tǒng)技術(shù)中的術(shù)語(yǔ),是操作系統(tǒng)能夠進(jìn)行運(yùn)算調(diào)度的最小單位,它被包涵在進(jìn)程之中,是行程中的實(shí)際運(yùn)作單位。一條線(xiàn)程指的是進(jìn)程中一個(gè)單一順序的控制流,一個(gè)進(jìn)程中可以并行多個(gè)線(xiàn)程,每條線(xiàn)程并行執(zhí)行不同的任務(wù)。

Java中每個(gè)線(xiàn)程都有一個(gè)調(diào)用棧,即使不在程序中創(chuàng)建任何新的線(xiàn)程,線(xiàn)程也在后臺(tái)運(yùn)行。main()方法運(yùn)行在一個(gè)線(xiàn)程內(nèi),稱(chēng)為主線(xiàn)程。一旦創(chuàng)建一個(gè)新的線(xiàn)程,就產(chǎn)生一個(gè)新的調(diào)用棧?! ?/p>

線(xiàn)程分為兩類(lèi):用戶(hù)線(xiàn)程和守候線(xiàn)程。當(dāng)所有用戶(hù)線(xiàn)程執(zhí)行完畢后,JVM自動(dòng)關(guān)閉。但是守候線(xiàn)程卻不獨(dú)立與JVM,守候線(xiàn)程一般是有操作系統(tǒng)或用戶(hù)自己創(chuàng)建的。

線(xiàn)程給我們帶來(lái)的好處

如果能合理地使用線(xiàn)程,將會(huì)減少開(kāi)發(fā)和維護(hù)成本,甚至可以改善復(fù)雜應(yīng)用程序的性能。如在GUI應(yīng)用程序中,還以通過(guò)線(xiàn)程的異步特性來(lái)更好地處理事件;在應(yīng)用服務(wù)器程序中可以通過(guò)建立多個(gè)線(xiàn)程來(lái)處理客戶(hù)端的請(qǐng)求。

線(xiàn)程甚至還可以簡(jiǎn)化虛擬機(jī)的實(shí)現(xiàn),如Java虛擬機(jī)(JVM)的垃圾回收器(garbage collector)通常運(yùn)行在一個(gè)或多個(gè)線(xiàn)程中。因此,使用線(xiàn)程將會(huì)從以下五個(gè)方面來(lái)改善我們的應(yīng)用程序:

1.   簡(jiǎn)化編程模型

2.   簡(jiǎn)化異步事件的處理

3. 充分利用CPU資源

現(xiàn)在世界上大多數(shù)計(jì)算機(jī)只有一塊CPU。因此,充分利用CPU資源顯得尤為重要。當(dāng)執(zhí)行單線(xiàn)程程序時(shí),由于在程序發(fā)生阻塞時(shí)CPU可能會(huì)處于空閑狀態(tài)。這將造成大量的計(jì)算資源的浪費(fèi)。

而在程序中使用多線(xiàn)程可以在某一個(gè)線(xiàn)程處于休眠或阻塞時(shí),而CPU又恰好處于空閑狀態(tài)時(shí)來(lái)運(yùn)行其他的線(xiàn)程。這樣CPU就很難有空閑的時(shí)候。因此,CPU資源就得到了充分地利用。

4.   使GUI更有效率

使用單線(xiàn)程來(lái)處理GUI事件時(shí),必須使用循環(huán)來(lái)對(duì)隨時(shí)可能發(fā)生的GUI事件進(jìn)行掃描,在循環(huán)內(nèi)部除了掃描GUI事件外,還得來(lái)執(zhí)行其他的程序代碼。如果這些代碼太長(zhǎng),那么GUI事件就會(huì)被“凍結(jié)”,直到這些代碼被執(zhí)行完為止。

在現(xiàn)代的GUI框架(如SWING、AWT和SWT)中都使用了一個(gè)單獨(dú)的事件分派線(xiàn)程(event dispatch thread,EDT)來(lái)對(duì)GUI事件進(jìn)行掃描。當(dāng)我們按下一個(gè)按鈕時(shí),按鈕的單擊事件函數(shù)會(huì)在這個(gè)事件分派線(xiàn)程中被調(diào)用。

由于EDT的任務(wù)只是對(duì)GUI事件進(jìn)行掃描,因此,這種方式對(duì)事件的反映是非常快的。

5.   節(jié)約成本

提高程序的執(zhí)行效率一般有三種方法:

(1)增加計(jì)算機(jī)的CPU個(gè)數(shù)。

(2)為一個(gè)程序啟動(dòng)多個(gè)進(jìn)程

(3)在程序中使用多線(xiàn)程。

看完上述內(nèi)容,你們對(duì)java中的線(xiàn)程有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。

本文名稱(chēng):java中的線(xiàn)程指的是什么-創(chuàng)新互聯(lián)
新聞來(lái)源:http://chinadenli.net/article36/heisg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計(jì)手機(jī)網(wǎng)站建設(shè)、小程序開(kāi)發(fā)建站公司、網(wǎng)站設(shè)計(jì)公司外貿(mào)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁(yè)設(shè)計(jì)公司