大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學(xué)習(xí)攻略 Java學(xué)習(xí) 基礎(chǔ)學(xué)習(xí)線程基礎(chǔ)知識,Java視頻下載

基礎(chǔ)學(xué)習(xí)線程基礎(chǔ)知識,Java視頻下載

更新時間:2020-04-13 15:25:39 來源:動力節(jié)點(diǎn) 瀏覽2115次


  基礎(chǔ)學(xué)習(xí)線程基礎(chǔ)知識,Java視頻下載,線程基礎(chǔ)知識Java并發(fā)編程,進(jìn)程和線程是操作系統(tǒng)內(nèi)兩個很基的概念,進(jìn)程是操作系統(tǒng)中進(jìn)行保護(hù)和資源分配的基本單位,操作系統(tǒng)分配資源以進(jìn)程為基本單位。而線程是進(jìn)程的組成部分代表了一條順序的執(zhí)行流。


基礎(chǔ)學(xué)習(xí)線程基礎(chǔ)知識,Java視頻下載


  1、線程基礎(chǔ)概念


  線程是指在一個單獨(dú)進(jìn)程中,對于CPU和內(nèi)存而言的多個工作單位,所有線程在進(jìn)程中的資源都是共享的,包括全局?jǐn)?shù)據(jù)、執(zhí)行代碼等。


  cpu核心數(shù)與線程數(shù)


  核心數(shù) : 線程數(shù) = 1 : 1


  如一個8核的cpu,該cpu會至少支持8個線程同時運(yùn)行


  intel引入了超線程技術(shù)后:


  核心數(shù) : 線程數(shù) = 1 : 2


  在編碼過程中可以感覺到同時運(yùn)行的線程遠(yuǎn)遠(yuǎn)不止這些。由于cpu的時間片輪轉(zhuǎn)機(jī)制又稱RR調(diào)度,簡單點(diǎn)講,操作系統(tǒng)會把已就緒的線程排成一個隊列,給每個進(jìn)程一個時間分片,該線程在cpu中執(zhí)行完這個時間分片后,不論是否執(zhí)行完都會讓出cpu資源給另外的線程,這樣在某一時間段內(nèi)就好像有很多線程在同時運(yùn)行。


  操作系統(tǒng)和cpu在進(jìn)行時間分片的任務(wù)切換時也是需要時間的,而且往往占用的時間比例又很大,所以在多線程開發(fā)時關(guān)注上下文切換對于多線程執(zhí)行時間和性能的影響。


  二、進(jìn)程和線程區(qū)別


  進(jìn)程:程序運(yùn)行進(jìn)行資源分配的最小單位,進(jìn)程中有多個線程,會共享這個線程的資源


  線程:cpu調(diào)度的最小單位,必須依賴進(jìn)程而存在


  例子:啟動的一個jar包程序就是一個進(jìn)程,而可以通過啟動參數(shù)配置它的內(nèi)存大小,-xmx,-xms等。而每一個請求都是在線程上去進(jìn)行的,cpu通過執(zhí)行線程任務(wù)完成每個請求任務(wù)。


  三、并行和并發(fā)


  并行:同一時刻,可以同時處理事情的能力


  并發(fā):與單位時間有關(guān),在單位時間內(nèi)可以處理問題的能力


  舉個例子,假設(shè)不考慮超線程技術(shù),一個4核cpu在任何一個時刻處理的是4個線程,并行數(shù)為4,而由于時間片輪轉(zhuǎn)機(jī)制,它在1秒內(nèi)可以支持處理100個線程,它在1秒內(nèi)的并發(fā)數(shù)為100


  四、高并發(fā)編程優(yōu)勢


  充分利用cpu的資源。如果是單線程,只占用一個核,其它的空閑;加快響應(yīng)時間。合理的設(shè)計多線程程序,使請求處理加快;程序模塊化異步化


  線程共享資源,會存在沖突、會存在死鎖、啟動線程太多,濫用線程,壓垮服務(wù)器。線程方法,java線程是協(xié)作式的,而不是搶占式


  五、線程終止的方法interrupt()


  線程之前提供了stop(),resume(),suspend()方法來終止線程,但已不建議使用,stop()會導(dǎo)致線程不會正確的釋放資源,suspend()會導(dǎo)致死鎖。


  要通過interrupt(),isInterrupted(),static interrupted()來自己實現(xiàn)中斷線程


  interrupt() :調(diào)用一個線程的interrupt() 方法中斷一個線程,并不是強(qiáng)行關(guān)閉這個線程,只是跟這個線程打個招呼,將線程的中斷標(biāo)志位置為true,線程是否中斷,由線程本身決定。


  isInterrupted(): 判定當(dāng)前線程是否處于中斷狀態(tài)。


  static interrupted() :判定當(dāng)前線程是否處于中斷狀態(tài),同時中斷標(biāo)志位改為false。


  thead.setPriority()方法


  優(yōu)先級的范圍1~100,缺省為5,但線程的優(yōu)先級不可靠,不建議作為線程開發(fā)時候的手段。


  java線程是映射到系統(tǒng)的原生線程來實現(xiàn)的,所以線程的調(diào)度最終決定于操作系統(tǒng)。雖然現(xiàn)在很多操作系統(tǒng)提供了線程優(yōu)先級的概念,但是不見得會與java線程的優(yōu)先級一一對應(yīng),如果優(yōu)先級比java線程多還好說,要是少的話,就不得不出現(xiàn)幾個優(yōu)先級相同的情況了。


  不能太依賴優(yōu)先級,優(yōu)先級可能會被系統(tǒng)自行改變。在widows系統(tǒng)存在著一個“優(yōu)先級推進(jìn)器”,它的大致作用就是當(dāng)前系統(tǒng)發(fā)現(xiàn)一個線程執(zhí)行的特別“勤奮努力”的話,可能就會越過線程優(yōu)先級給它分配時間。


基礎(chǔ)學(xué)習(xí)線程基礎(chǔ)知識,Java視頻下載


  以上就是動力節(jié)點(diǎn)java培訓(xùn)機(jī)構(gòu)的小編針對“基礎(chǔ)學(xué)習(xí)線程基礎(chǔ)知識,Java視頻下載”的內(nèi)容進(jìn)行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務(wù)。


提交申請后,顧問老師會電話與您溝通安排學(xué)習(xí)

免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 伊人伊人网 | 福利视频在线播放 | 日韩欧美一区二区三区四区 | 性夜影院爽黄a爽免费看网站 | 亚洲综合图 | 亚洲日本在线观看视频 | 999精品视频这里只有精品 | 99精品免费久久久久久久久日本 | 曰本lesxxxx在线观看视频 | 九九热九九热 | 综合另类 | 精品国产成人三级在线观看 | 国产成在线观看免费视频成本人 | 久久99精品久久久久久园产越南 | 国产精品久久久久免费视频 | 亚洲一区二区三区香蕉 | 久久美剧免费在线观看 | 男人草女人视频 | 狠狠插狠狠干 | 婷婷四房综合激情五月性色 | 在线观看免费视频a | 一日本道加勒比高清一二三 | 香蕉视频成人在线观看 | 久久爆操 | 五月天婷婷激情视频 | 九九热欧美 | 在线视频中文字幕 | 亚洲精品第一国产综合高清 | 亚洲狼人综合干 | 国产精品色婷婷在线观看 | 免费看片aⅴ免费大片 | 91九色在线视频 | 日韩一级特黄毛片在线看 | 亚洲欧美日韩精品久久亚洲区 | 国产凹凸在线一区二区色老头 | 欧洲一级黄色 | 日韩欧美在线中文字幕 | 欧美伊人久久久久久久久影院 | 久久精品免视国产 | 国产乱人免费视频 | 亚洲视频在线一区二区三区 |