巨乳在线中文字幕,巨乳诱惑中文字幕,中文字幕人成乱码熟女_腾讯视频
  • 當前位置: 首頁 / 技術分享 / 正文
    JavaScript 線程與進程初探

    2022-11-25

    執行 定時器 線程 進程 單線

      一、什么是進程?

      程序的一次執行,它占有一片獨有的內存空間??梢酝ㄟ^任務管理器查看進程。

      二、什么是線程?

      線程是進程內的一個獨立的執行單元。是程序執行的一個完整流程。是CPU最小的調度單元。

      應用程序必須運行在某個進程的某個線程上。 一個進程中至少有一個運行的線程:主線程,進程啟動后自動創建。 一個進程也可以運行多個線程。我們會說程序是多線程運行的。 一個進程中的數據可以供其中的多個線程直接共享。 多個進程間的數據是不能直接共享的。 線程池(Thread Pool):保存多個線程對象的容器,實現線程對象的反復利用。

      單線程和多線程的區別: 多線程: 優點:有效的提高CPU的利用率。 缺點: 創建多線程會增大開銷。 線程間的切換開銷。 死鎖與狀態同步的問題。 單線程: 優點:順序編程簡單易懂。 缺點:效率低。

      JS程序是單線程運行的。但使用HTML5中的Web Workers可以多線程運行。瀏覽器是多線程運行的。瀏覽器有單進程,也有多進程的。

    JavaScript 線程與進程初探

      三、瀏覽器內核模塊

      支撐瀏覽器運行最核心的程序。不同的瀏覽器內核可能不一樣。內核是由很多模塊組成的。

      瀏覽器模塊構成: 主線程:

      JS引擎模塊:負責JS程序的編譯與運行。

      HTML, CSS文檔解析模塊:負責頁面文本的解析。

      DOM/CSS模塊:負責dom/css在內存中的相關處理。

      布局和渲染模塊:負責頁面的布局和效果的繪制(內存中的對象)。

      分線程:

      定時器模塊:負責定時器的管理。

      事件響應模塊:負責事件的管理。

      網絡請求模塊:負責ajax請求。

      四、定時器的理解

      定時器真的是定時執行的嗎?

      定時器并不能保證真正的定時執行。一般會延遲一點,但是可以接受。也可能是延遲很長時間,不能接受。

      原因是JS是單線程的。定時器的回調函數是在主線程執行的。所以回調函數的開始執行時間受主線程的影響。

      定時器回調函數是在分線程執行的嗎?

      是在主線程執行的,因為JS是單線程的。

      定時器是如何實現的?

      事件循環模型

      五、JavaScript 單線程的理解

      

      代碼分類:

      初始化代碼

      回調代碼

      JS引擎執行代碼的基本流程: 先執行初始化代碼,包含一些特別的代碼(設置定時器,綁定監聽,發送ajax請求)。 后面某個時刻執行回調代碼。

      為什么JS要設計成單線程模式? 如果JS使用多線程,此時程序中有兩個線程P1和P2.P1負責修改字段,P2負責刪除字段。它們同時作用于字段P。假設剛開始是P1搶到了資源但是在修改操作執行之前,P2搶到了資源,將P的內容刪除了,此時P1的修改操作會失敗。而且多線程間的切換也會浪費系統的資源。

    分享: 更多

    上一篇:Promise、generato....sync類同步編程

    下一篇:

    好程序員公眾號

    • · 剖析行業發展趨勢
    • · 匯聚企業項目源碼

    好程序員開班動態

    More+
    • HTML5大前端 <高端班>

      開班時間:2021-04-12(深圳)

      開班盛況

      開班時間:2021-05-17(北京)

      開班盛況
    • 大數據+人工智能 <高端班>

      開班時間:2021-03-22(杭州)

      開班盛況

      開班時間:2021-04-26(北京)

      開班盛況
    • JavaEE分布式開發 <高端班>

      開班時間:2021-05-10(北京)

      開班盛況

      開班時間:2021-02-22(北京)

      開班盛況
    • Python人工智能+數據分析 <高端班>

      開班時間:2021-07-12(北京)

      預約報名

      開班時間:2020-09-21(上海)

      開班盛況
    • 云計算開發 <高端班>

      開班時間:2021-07-12(北京)

      預約報名

      開班時間:2019-07-22(北京)

      開班盛況
    在線咨詢
    試聽
    入學教程
    立即報名

    Copyright 2011-2023 北京千鋒互聯科技有限公司 .All Right 京ICP備12003911號-5 京公網安備 11010802035720號

    巨乳在线中文字幕,巨乳诱惑中文字幕,中文字幕人成乱码熟女_腾讯视频