Java 并發編程】線程簡介 ( 并發類型 | 線程狀態 | CPU 數據緩存 )

      網友投稿 684 2022-05-29

      文章目錄

      一、并發類型

      二、線程狀態

      三、CPU 數據緩存

      一、并發類型

      并發類型 :

      Thread

      Runnable

      Future

      ThreadPool

      其中

      Runnable

      ,

      ThreadPool

      都是基于

      Thread

      執行的 ;

      二、線程狀態

      線程狀態 :

      線程剛創建時 , 處于 "

      新建狀態

      " ;

      調用線程 start() 方法之后 , 線程進入 Runnable "

      可運行狀態

      " , 此時等待 OS 調度分配

      CPU 時間片

      運行 ;

      線程分配到

      CPU 時間片

      之后 , 線程進入 Running "

      運行狀態

      " , 如果線程分配的 CPU 時間片運行完畢 , 線程又回到 Runnable "

      可運行狀態

      " ;

      如果運行過程中 , 手動調用了 Thread.sleep() 或 join()方法 , 線程進入了 "

      阻塞狀態

      " , 線程喚醒之后又回到 Runnable "

      運行狀態

      " ;

      線程運行完畢之后 , 或者線程執行出現異常 , 進入 Dead "

      死亡狀態

      " ;

      三、CPU 數據緩存

      程序執行時 , 主要是 CPU 執行程序中的指令 , 指令的運行 , 還需要

      加載相應的數據 ;

      CPU 運行的速度很快 , 如果每次

      使用 I/O 總線訪問內存獲取 CPU 執行所需的數據

      , 無法將 CPU 的性能優勢發揮到最大 ;

      數據從

      磁盤

      中讀取 , 加入到

      內存

      中 , 線程執行后 , 會將需要操作的數據加入到

      CPU 緩存

      中 ;

      CPU 緩存分為 L1 , L2 , L3 , 3 3 3 個級別的緩存 , 如下圖所示 ;

      CPU 執行線程時 , 不直接操作內存中的數據 , 而是通過 CPU 緩存進行處理 ;

      JMM ( Java Memory Model - Java 內存模型 ) 參考了 CPU 緩存模型 , CPU 都是多核的 ,

      每個核中都有 L1 和 L2 緩存 ,

      【Java 并發編程】線程簡介 ( 并發類型 | 線程狀態 | CPU 數據緩存 )

      L3 緩存整個 CPU 的所有核心共同使用 ;

      Java 內存模型只是一種規范 ;

      Java 虛擬機運行時內存 , 是不同的虛擬機實現的不同的內存使用方式 ;

      每種虛擬機的底層實現都是不同的 ;

      Java 線程 運行時 , 每個 Java 線程都配套一個

      工作內存

      , 然后工作內存從

      主內存

      中獲取數據 , 主內存被所有工作內存共享 ;

      工作內存 就是 線程的

      本地內存

      , 其中存儲的是主內存中的

      變量副本

      , 使用主內存的變量前 ,

      先將變量拷貝工作內存中 ;

      當在線程中

      修改了工作內存中的數據

      , 需要同時

      將變量的修改同步到主內存中 ;

      這里的 工作線程 / 本地線程 相當于 CPU 中的 L1 / L2 緩存 , 主內存 相當于 CPU 中的 L3 緩存 ;

      如果多個線程同時對 主內存 中的同一個變量進行修改 , 變量的值被不同線程按照不同順序進行改變 , 主線程中的這個變量是

      線程不安全的 ;

      Java 任務調度

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

      上一篇:React中的狀態管理---Mobx
      下一篇:【leetcode】高頻題目整理_設計篇( High Frequency Problems, Design )
      相關文章
      亚洲欧美日韩中文高清www777| 亚洲一区动漫卡通在线播放| 亚洲av永久无码精品网址| 亚洲黄色免费观看| 亚洲情a成黄在线观看动漫尤物| 亚洲国产精品VA在线看黑人 | 亚洲综合av永久无码精品一区二区| 怡红院亚洲红怡院在线观看| 99亚洲精品卡2卡三卡4卡2卡| 国产成人人综合亚洲欧美丁香花 | 亚洲三级在线视频| 亚洲午夜国产精品| 亚洲一区二区久久| 亚洲综合在线一区二区三区| 亚洲精品无码久久久久YW| 亚洲国产日韩a在线播放| 亚洲欧美成人一区二区三区| 亚洲国产成人久久精品软件| 在线观看亚洲网站| 黑人大战亚洲人精品一区| 亚洲人成无码网站| 亚洲国产精品成人久久| 青青草原精品国产亚洲av| 亚洲性一级理论片在线观看| 亚洲国产成a人v在线观看| 亚洲日韩国产一区二区三区在线| 色欲aⅴ亚洲情无码AV蜜桃| 亚洲国产激情一区二区三区| 国产亚洲日韩在线三区| 日本亚洲成高清一区二区三区| 亚洲AV区无码字幕中文色| 亚洲日本在线播放| 亚洲欧洲精品成人久久曰| 亚洲国产人成中文幕一级二级| 亚洲伊人久久大香线蕉综合图片| 亚洲国产一区二区a毛片| 亚洲免费在线视频观看| 亚洲人AV在线无码影院观看| 亚洲?v无码国产在丝袜线观看 | 亚洲日本一区二区三区在线| 亚洲av福利无码无一区二区 |