国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > Java > 正文

Java線程:概念與原理

2019-11-06 06:02:23
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

一、操作系統(tǒng)中線程和進(jìn)程的概念

現(xiàn)在的操作系統(tǒng)是多任務(wù)操作系統(tǒng)。多線程是實(shí)現(xiàn)多任務(wù)的一種方式。

進(jìn)程是指一個(gè)內(nèi)存中運(yùn)行的應(yīng)用程序,每個(gè)進(jìn)程都有自己獨(dú)立的一塊內(nèi)存空間,一個(gè)進(jìn)程中可以啟動(dòng)多個(gè)線程。比如在Windows系統(tǒng)中,一個(gè)運(yùn)行的exe就是一個(gè)進(jìn)程。

線程是指進(jìn)程中的一個(gè)執(zhí)行流程,一個(gè)進(jìn)程中可以運(yùn)行多個(gè)線程。比如java.exe進(jìn)程中可以運(yùn)行很多線程。線程總是屬于某個(gè)進(jìn)程,進(jìn)程中的多個(gè)線程共享進(jìn)程的內(nèi)存。

“同時(shí)”執(zhí)行是人的感覺(jué),在線程之間實(shí)際上輪換執(zhí)行。

二、Java中的線程

在Java中,“線程”指兩件不同的事情: 1、java.lang.Thread類(lèi)的一個(gè)實(shí)例; 2、線程的執(zhí)行。

使用java.lang.Thread類(lèi)或者java.lang.Runnable接口編寫(xiě)代碼來(lái)定義、實(shí)例化和啟動(dòng)新線程。

一個(gè)Thread類(lèi)實(shí)例只是一個(gè)對(duì)象,像Java中的任何其他對(duì)象一樣,具有變量和方法,生死于堆上。

Java中,每個(gè)線程都有一個(gè)調(diào)用棧,即使不在程序中創(chuàng)建任何新的線程,線程也在后臺(tái)運(yùn)行著。

一個(gè)Java應(yīng)用總是從main()方法開(kāi)始運(yùn)行,mian()方法運(yùn)行在一個(gè)線程內(nèi),它被稱(chēng)為主線程。

一旦創(chuàng)建一個(gè)新的線程,就產(chǎn)生一個(gè)新的調(diào)用棧。

線程總體分兩類(lèi):用戶線程和守候線程。

當(dāng)所有用戶線程執(zhí)行完畢的時(shí)候,JVM自動(dòng)關(guān)閉。但是守候線程卻不獨(dú)立于JVM,守候線程一般是由操作系統(tǒng)或者用戶自己創(chuàng)建的。


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 襄樊市| 海城市| 台中县| 囊谦县| 敦化市| 黄大仙区| 彝良县| 炎陵县| 瑞昌市| 衡东县| 德清县| 临安市| 芷江| 中卫市| 龙游县| 神池县| 沽源县| 河曲县| 威信县| 正镶白旗| 高碑店市| 永定县| 庄浪县| 太湖县| 隆尧县| 清苑县| 手机| 阜新市| 凌源市| 淮南市| 平舆县| 清新县| 南溪县| 陇西县| 甘德县| 夏津县| 怀来县| 敦化市| 巴塘县| 崇文区| 兴和县|