JAVA-基礎語法-多線程基礎-守護線程

      網友投稿 641 2022-05-30

      守護線程

      非守護線程結束完成后,JVM不關心守護線程是否結束,都會 退出虛擬機。

      所以守護線程不能持有需要關閉的資源,如文件關閉等。不然會造成文件丟失。

      創建守護線程。

      Thread t = new MyThread();

      t.setDaemon(true);

      t.start();

      線程同步

      多線程模型下,要保證邏輯正確,對共享變量進行讀寫時,必須保證一組指令以原子方式執行:即某一個線程執行時,其他線程必須等待:

      JAVA-基礎語法-多線程基礎-守護線程

      ┌───────┐ ? ? ┌───────┐

      │Thread1│ ? ? │Thread2│

      └───┬───┘ ? ? └───┬───┘

      │ ? ? ? ? ? ? │

      │-- lock -- ? │

      │ILOAD (100) │

      │IADD ? ? ? ? │

      │ISTORE (101) │

      │-- unlock -- │

      │ ? ? ? ? ? ? │-- lock --

      │ ? ? ? ? ? ? │ILOAD (101)

      │ ? ? ? ? ? ? │IADD

      │ ? ? ? ? ? ? │ISTORE (102)

      │ ? ? ? ? ? ? │-- unlock --

      ▼ ? ? ? ? ? ? ▼

      通過加鎖和解鎖的操作,就能保證3條指令總是在一個線程執行期間,不會有其他線程會進入此指令區間。即使在執行期線程被操作系統中斷執行,其他線程也會因為無法獲得鎖導致無法進入此指令區間。只有執行線程將鎖釋放后,其他線程才有機會獲得鎖并執行。這種加鎖和解鎖之間的代碼塊我們稱之為臨界區(Critical Section),任何時候臨界區最多只有一個線程能執行。

      Java

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:安全滲透測試,漏洞掃描產品匯總大全(后續更新使用方法)
      下一篇:dart設計模式之單例模式
      相關文章
      久久精品亚洲日本佐佐木明希| 亚洲老妈激情一区二区三区| 久久夜色精品国产亚洲AV动态图| 亚洲国产成人久久| 久久亚洲精品视频| 亚洲午夜久久久影院伊人| 久久精品国产精品亚洲人人 | 亚洲A∨精品一区二区三区下载| 亚洲国产精品日韩在线| 亚洲图片激情小说| 亚洲a级成人片在线观看| 狠狠色伊人亚洲综合网站色| 亚洲香蕉久久一区二区| 亚洲综合色一区二区三区| 亚洲乱码av中文一区二区| 亚洲AV无码之国产精品| 欧美色欧美亚洲另类二区| 亚洲AV成人一区二区三区观看| 亚洲成av人片在www鸭子| 精品韩国亚洲av无码不卡区| 亚洲高清成人一区二区三区| 国产亚洲蜜芽精品久久| 亚洲免费一区二区| 亚洲色精品aⅴ一区区三区| 亚洲阿v天堂在线| 亚洲高清免费在线观看| 亚洲国产中文在线二区三区免| 亚洲一区精彩视频| 色欲aⅴ亚洲情无码AV蜜桃| 亚洲第一区在线观看| 国产aⅴ无码专区亚洲av麻豆| 亚洲成A人片在线观看无码不卡| 亚洲人成在线影院| 亚洲人成在线播放| 亚洲国产精品成人AV在线| 亚洲精品无码永久在线观看| 亚洲精品高清无码视频| 亚洲黄色免费观看| 亚洲综合色一区二区三区| 午夜亚洲国产成人不卡在线| 亚洲日产无码中文字幕|