色欧美4477福利网在线观看,亚洲国产AV一区二区污污污,精品欧美一区二区三区,免费人成在线观看欧美精品

    機(jī)構(gòu)分類

    Java多線程學(xué)習(xí)知識(shí)點(diǎn)總結(jié)

    百教網(wǎng) it培訓(xùn) 本站編輯 2020-08-23 12:00:45
    導(dǎo)讀 隨著信息技術(shù)的快速發(fā)展,越來越多的人開始學(xué)習(xí)Java,這里Java培訓(xùn)機(jī)構(gòu)老師整理了Java多線程學(xué)習(xí)知識(shí)點(diǎn),現(xiàn)在分享給大家,希望能對(duì)大家學(xué)習(xí)Java提供一些幫助。

    Java多線程學(xué)習(xí)知識(shí)點(diǎn)總結(jié)

    Java多線程學(xué)習(xí)知識(shí)點(diǎn)總結(jié)
      隨著信息技術(shù)的快速發(fā)展,越來越多的人開始學(xué)習(xí)Java,這里Java培訓(xùn)機(jī)構(gòu)老師整理了Java多線程學(xué)習(xí)知識(shí)點(diǎn),現(xiàn)在分享給大家,希望能對(duì)大家學(xué)習(xí)Java提供一些幫助。
      這里先不講juc里的多線程類。juc相關(guān)內(nèi)容會(huì)在Java并發(fā)專題講解。
      1.線程的實(shí)現(xiàn)可以通過繼承Thread類和實(shí)現(xiàn)Runable接口也可以使用線程池。callable配合future可以實(shí)現(xiàn)線程中的數(shù)據(jù)獲取。
      2.Java中的線程有7種狀態(tài),new runable running blocked waiting timewaiting terminate
      blocked是線程等待其他線程鎖釋放。waiting是wait以后線程無限等待其他線程使用notify喚醒timewating是有限時(shí)間地等待被喚醒,也可能是sleep固定時(shí)間。
      3.Thread的join是實(shí)例方法,比如a.join(b),則說明a線程要等b線程運(yùn)行完才會(huì)運(yùn)行。
      4.o.wait方法會(huì)讓持有該對(duì)象o的線程釋放鎖并且進(jìn)入阻塞狀態(tài),notify則是持有o鎖對(duì)象的線程通知其他等待鎖的線程獲取鎖。notify方法并不會(huì)釋放鎖。注意這兩個(gè)方法都只能在synchronized同步方法或同步塊里使用。
      5.synchronized方法底層使用系統(tǒng)調(diào)用的mutex鎖,開銷較大,jvm會(huì)為每個(gè)鎖對(duì)象維護(hù)一個(gè)等待隊(duì)列,讓等待該對(duì)象鎖的線程在這個(gè)隊(duì)列中等待。當(dāng)線程獲取不到鎖時(shí)則讓線程阻塞,而其他檢查notify以后則會(huì)通知任意一個(gè)線程,所以這個(gè)鎖時(shí)非公平鎖。
      6.Thread.sleep(),Thread.interrupt()等方法都是類方法,表示當(dāng)前調(diào)用該方法的線程的操作。
      一個(gè)線程實(shí)例連續(xù)start兩次會(huì)拋異常,這是因?yàn)榫€程start后會(huì)設(shè)置標(biāo)識(shí),如果再次start則判斷為錯(cuò)誤。
      以上就是關(guān)于“Java多線程學(xué)習(xí)知識(shí)點(diǎn)總結(jié)”的內(nèi)容介紹,希望對(duì)大家學(xué)習(xí)有所幫助。想要了解更多關(guān)于Java多線程學(xué)習(xí)培訓(xùn)的相關(guān)資訊歡迎來咨詢。

    JAVA推薦機(jī)構(gòu)