<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      2022-08-03 第七小組 房雪瑩 學(xué)習(xí)筆記

      今日學(xué)習(xí)內(nèi)容:

      1.鎖:
      ?synchronized多線程并發(fā)編程
          重量級(jí)鎖
         JDK1.6為了減少獲得鎖和釋放鎖帶來的性能消耗引入的偏鎖和輕量級(jí)鎖
         synchronized有三種方式來加鎖,分別是
         1)修飾實(shí)例的方法,作用于當(dāng)前實(shí)例加鎖,進(jìn)入同步代碼前要獲得當(dāng)前實(shí)例的鎖
         2)靜態(tài)方法,作用于當(dāng)前類對(duì)象加鎖,進(jìn)入同步代碼前要獲得的當(dāng)前類對(duì)象的鎖
         3)代碼塊,指定加鎖對(duì)象,對(duì)給定的對(duì)象加鎖,進(jìn)入同步代碼塊之前要獲得給定對(duì)象的鎖、

      2.實(shí)例方法:(它的鎖)調(diào)用該方法的實(shí)例
      靜態(tài)方法:類對(duì)象(.class)
      this:調(diào)用該方法的實(shí)例對(duì)象
      類對(duì)象:類對(duì)象

      其實(shí)就是操作共享數(shù)據(jù)的代碼
      共享數(shù)據(jù),多個(gè)線程共同操作的變量,都可以充當(dāng)鎖

      當(dāng)前使用同步方法時(shí),synchronized鎖的東西就是this當(dāng)前對(duì)象

      3.關(guān)于同步方法:
      1.同步方法依然涉及到同步鎖對(duì)象,不需要我們寫出來
      2.非靜態(tài)的同步方法,同步鎖就是this
        靜態(tài)的同步方法,同步監(jiān)視就是類本身

      4.同步代碼塊:
      1.選好同步監(jiān)視器(鎖)推薦使用類對(duì)象,第三方對(duì)象,this
      2.在實(shí)現(xiàn)接口創(chuàng)建線程類中,同步代碼塊不可以用this來充當(dāng)同步鎖

      同步的方法,解決了線程安全的問題
      操作同步代碼時(shí),只有一個(gè)線程能夠參與,其他線程等待
      相當(dāng)于一個(gè)單線程的過程,效率低。

      5.死鎖
      死鎖是這樣的一種情形,多個(gè)線程同時(shí)被阻塞,他們中的一個(gè)或者全部
      都在等待某個(gè)資源的釋放,由于線程無限制的阻塞,程序就不可能正常釋放

      6.java死鎖產(chǎn)生的四個(gè)必要條件
      1.互斥使用,當(dāng)資源被一個(gè)線程使用,別的線程不能使用
      2.不能搶占,資源的請(qǐng)求者不能強(qiáng)制從占用者中搶奪資源,資源只能從占有者手動(dòng)釋放
      3.請(qǐng)求和保持
      4.循環(huán)等待,存在一個(gè)等待隊(duì)列,P1占有P2資源,P2占用P3的資源
        P3占有P1的資源。形成了一個(gè)等待環(huán)路

      7.線程重入
      任意線程在拿到鎖之后,再次獲取該鎖不會(huì)被該鎖所阻礙
      線程不會(huì)被自己鎖死的,這就叫線程重入,synchronized可重入鎖

      8.Object類對(duì)多線程的支持
      wait():
      wait(Long timeout):當(dāng)前線程進(jìn)入等待狀態(tài)
      notify():喚醒正在等待的下一個(gè)線程
      notifyALL():喚醒正在等待的所有線程

      9.線程的通信
      比如兩條線程,共同運(yùn)行。
      線程A 如果先走,線程B就要等待,等A走完,喚醒B,B再走

      10.方法的總結(jié):
      1.Thread的兩個(gè)靜態(tài)方法:
       sleep釋放CPU資源,但不會(huì)釋放鎖
       yield方法,釋放CPU 的執(zhí)行權(quán),保留了CPU的執(zhí)行資格(不常用)
       
      2.join方法:yield出讓了執(zhí)行權(quán),join就加入進(jìn)來
      3.wait方法:釋放CPU資源,釋放鎖
        notify:?jiǎn)拘颜诘却南乱粋€(gè)線程
        notifyALL:?jiǎn)拘颜诘却乃芯€程

      11.線程的退出
      使用退出標(biāo)志,線程正常退出,run方法結(jié)束后線程終止
      不要使用stop方法,System.exit(-1)

      12.線程的常用方法:
      Thread類中的方法
      1.start方法:?jiǎn)?dòng)當(dāng)前線程,執(zhí)行run方法
      2.run:
      3.currentThread:靜態(tài)方法,獲取當(dāng)前正在執(zhí)行的線程
      4.getId:返回此線程的唯一標(biāo)識(shí)
      5.setName(String):設(shè)置當(dāng)前線程的name
      6.getName:獲取當(dāng)前線程的name
      7.getPriority:獲取當(dāng)前線程的優(yōu)先級(jí)
      8.setPriority(int):設(shè)置當(dāng)前線程的優(yōu)先級(jí)
      9.getState():獲取當(dāng)前線程的聲明周期
      10.interrupt():中斷線程的執(zhí)行
      11.interrupted():查看當(dāng)前線程是否中斷

       

      posted @ 2022-08-03 18:45  房雪瑩  閱讀(37)  評(píng)論(0)    收藏  舉報(bào)
      主站蜘蛛池模板: 大桥未久亚洲无av码在线| 国产综合一区二区三区麻豆| 亚洲精品一区二区三区大| 亚洲av成人一区二区三区| 色老99久久精品偷偷鲁| 亚洲中文字幕人妻系列| 粗了大了 整进去好爽视频| 国产精品三级中文字幕| 久久月本道色综合久久| 清水河县| 国产精品护士| 亚洲国产99精品国自产拍| 亚洲欧美高清在线精品一区二区| 国产拗精品一区二区三区| 综合亚洲网| 国产精品久久毛片| 国产一区一一区高清不卡| 露脸叫床粗话东北少妇| 久久精品国产成人午夜福利| 国产精品午夜av福利| av在线播放国产一区| 色老头亚洲成人免费影院| 樱桃熟了a级毛片| 国产成人精品无人区一区| 在线a级毛片无码免费真人| 黄色国产精品一区二区三区| 欧美和黑人xxxx猛交视频| 国产欧美精品区一区二区三区 | 四虎女优在线视频免费看| 福利网午夜视频一区二区| 伊人久久大香线蕉av一区二区| 内射囯产旡码丰满少妇| 狠狠综合久久综合88亚洲| 南投县| 久久综合九色综合97伊人| A毛片毛片看免费| 四虎国产精品永久在线下载| 免费看国产精品3a黄的视频| 国产爆乳乱码女大生Av| 99RE6在线观看国产精品 | 亚洲精品色国语对白在线|