黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國(guó)咨詢/投訴熱線:400-8080-105
動(dòng)力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁(yè) 學(xué)習(xí)攻略 Java學(xué)習(xí) 最全多線程編程java面試題

最全多線程編程java面試題

更新時(shí)間:2019-07-19 11:28:46 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽3525次


多線程并發(fā)編程是Java編程中重要的一塊內(nèi)容,也是面試重點(diǎn)覆蓋區(qū)域。所以,學(xué)好多線程并發(fā)編程對(duì)Java程序員來(lái)說(shuō)極其重要的。下面動(dòng)力節(jié)點(diǎn)java學(xué)院小編整理了60道最常見(jiàn)的Java多線程面試題及答案,供你學(xué)習(xí)或者面試參考。


1.多線程使用的優(yōu)缺點(diǎn)?


優(yōu)點(diǎn):


(1)多線程技術(shù)使程序的響應(yīng)速度更快

(2)當(dāng)前沒(méi)有進(jìn)行處理的任務(wù)可以將處理器時(shí)間讓給其它任務(wù)

(3)占用大量處理時(shí)間的任務(wù)可以定期將處理器時(shí)間讓給其它任務(wù)

(4)可以隨時(shí)停止任務(wù)

(5)可以分別設(shè)置各個(gè)任務(wù)的優(yōu)先級(jí)以及優(yōu)化性能


缺點(diǎn):


(1)等候使用共享資源時(shí)造成程序的運(yùn)行速度變慢

(2)對(duì)線程進(jìn)行管理要求額外的cpu開(kāi)銷

(3)可能出現(xiàn)線程死鎖情況。即較長(zhǎng)時(shí)間的等待或資源競(jìng)爭(zhēng)以及死鎖等癥狀。


1.start()方法和run()方法簡(jiǎn)介和區(qū)別?


start()方法:


1)用start方法來(lái)啟動(dòng)線程,真正實(shí)現(xiàn)了多線程運(yùn)行,這時(shí)無(wú)需等待run方法體代碼執(zhí)行完畢而直接繼續(xù)執(zhí)行下面的代碼。

2)通過(guò)調(diào)用Thread類的start()方法來(lái)啟動(dòng)一個(gè)線程,這時(shí)此線程處于就緒(可運(yùn)行)狀態(tài),并沒(méi)有運(yùn)行,一旦得到CPU時(shí)間片,就開(kāi)始執(zhí)行run()方法。


run()方法:


1)run()方法只是類的一個(gè)普通方法而已,如果直接調(diào)用Run方法,程序中依然只有主線程這一個(gè)線程,其程序執(zhí)行路徑還是只有一條。

總結(jié):

1)調(diào)用start方法方可啟動(dòng)線程,

2)而run方法只是thread的一個(gè)普通方法調(diào)用,還是在主線程里執(zhí)行。

3)把需要并行處理的代碼放在run()方法中,start()方法啟動(dòng)線程將自動(dòng)調(diào)用run()方法,這是由jvm的內(nèi)存機(jī)制規(guī)定的。

4)并且run()方法必須是public訪問(wèn)權(quán)限,返回值類型為void。


最全多線程編程java面試題


2.Runnable接口和Callable接口的相同點(diǎn)和不同點(diǎn)?


Lock和synchronized對(duì)比?


1)Lock是一個(gè)接口,而synchronized是Java中的關(guān)鍵字,synchronized是內(nèi)置的語(yǔ)言實(shí)現(xiàn);

2)synchronized在發(fā)生異常時(shí),會(huì)自動(dòng)釋放線程占有的鎖,因此不會(huì)導(dǎo)致死鎖現(xiàn)象發(fā)生;而Lock在發(fā)生異常時(shí),如果沒(méi)有主動(dòng)通過(guò)unLock()去釋放鎖,則很可能造成死鎖現(xiàn)象,因此使用Lock時(shí)需要在finally塊中釋放鎖;

3)Lock可以讓等待鎖的線程響應(yīng)中斷,而synchronized卻不行,使用synchronized時(shí),等待的線程會(huì)一直等待下去,不能夠響應(yīng)中斷;

4)通過(guò)Lock可以知道有沒(méi)有成功獲取鎖,而synchronized卻無(wú)法辦到。

5)Lock可以提高多個(gè)線程進(jìn)行讀操作的效率。

6)在JDK1.5中,synchronized是性能低效的。因?yàn)檫@是一個(gè)重量級(jí)操作,它對(duì)性能最大的影響是阻塞式的實(shí)現(xiàn),掛起線程和恢復(fù)線程的操作都需要轉(zhuǎn)入內(nèi)核態(tài)中完成,這些操作給系統(tǒng)的并發(fā)性帶來(lái)了很大的壓力。相比之下使用Java提供的Lock對(duì)象,性能更高一些。


但是,JDK1.6,發(fā)生了變化,對(duì)synchronize加入了很多優(yōu)化措施,有自適應(yīng)自旋,鎖消除,鎖粗化,輕量級(jí)鎖,偏向鎖等等。導(dǎo)致在JDK1.6上synchronize的性能并不比Lock差。因此。提倡優(yōu)先考慮使用synchronized來(lái)進(jìn)行同步。


更多java面試題請(qǐng)關(guān)注動(dòng)力節(jié)點(diǎn)java學(xué)院官網(wǎng)。


提交申請(qǐng)后,顧問(wèn)老師會(huì)電話與您溝通安排學(xué)習(xí)

  • 全國(guó)校區(qū) 2025-05-15 搶座中
  • 全國(guó)校區(qū) 2025-06-05 搶座中
  • 全國(guó)校區(qū) 2025-06-26 搶座中
免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 视频网站黄 | 中文国产欧美在线观看 | 一级一级一级毛片 | 亚洲另类在线视频 | 狠狠狠色 | 高清无遮挡在线观看 | 在线免费观看日韩 | 日韩人体在线 | 午夜在线网站 | 亚洲性视频网站 | 成品片a免费入口 | 成人网在线 | 在线青草 | 日韩小视频在线观看 | 欧美一级久久久久久久久大 | 日日操夜夜操视频 | 国产成人精品午夜二三区 | 欧美xxx精品 | 亚洲午夜在线播放 | 黄色国产免费观看 | 精品剧情v国产在线麻豆 | 国产va欧美va在线观看 | 三级福利| 日日摸夜夜添欧美一区 | 女黄人东京手机福利视频 | 五月天婷婷在线视频 | www91在线观看 | 午夜性刺激在线观看视频 | 欧美在线视频二区 | 日日射天天射 | 色就操 | 欧美性群另类大交人妖 | 人喾交性专区免费看 | 成人国产一区二区三区精品 | 国产欧美成人免费观看 | www.九色视频| 日本一区二区三区欧美在线观看 | 亚洲一区中文字幕在线观看 | 亚洲经典激情春色另类 | 97夜夜澡人人爽人人免费 | 久久久久久福利 |