• <del id="a8uas"></del>
    • 千鋒教育-做有情懷、有良心、有品質的職業教育機構

      400-811-9990
      手機站
      千鋒教育

      千鋒學習站 | 隨時隨地免費學

      千鋒教育

      掃一掃進入千鋒手機站

      領取全套視頻
      千鋒教育

      關注千鋒學習站小程序
      隨時隨地免費學習課程

      上海
      • 北京
      • 鄭州
      • 武漢
      • 成都
      • 西安
      • 沈陽
      • 廣州
      • 南京
      • 深圳
      • 大連
      • 青島
      • 杭州
      • 重慶
      當前位置:合肥千鋒IT培訓  >  技術干貨  >  pythongil是什么

      pythongil是什么

      來源:千鋒教育
      發布人:xqq
      時間: 2023-11-08 20:48:38

      pythongil是什么

      1、說明

      是全局解釋器鎖,每個線程在執行時候都需要先獲取GIL,保證同一時刻只有一個線程可以執行代碼,即同一時刻只有一個線程使用CPU,也就是說多線程并不是真正意義上的同時執行。

      2、產生原因

      (1)GuidovanRossum(吉多·范羅蘇姆)創建python時就只考慮到單核cpu。

      (2)解決多線程之間數據完整性和狀態同步的最簡單方法自然就是加鎖。于是有了GIL這把超級大鎖。

      (3)cpython解析只允許擁有GIL全局解析器鎖才能運行程序。

      (4)保證同一個時刻只允許一個線程可以使用cpu。

      (5)以前寫cpython解析器的時候就考慮一個cpu情況。

      (6)由于大量的程序開發者接收了這套機制,現在代碼量越來越多,已經不容易通過c代碼去解決這個問題。

      3、gil鎖的釋放時機

      (1)遇到像i/o操作這種會有時間空閑情況造成cpu閑置的情況會釋放Gil

      (2)會有一個專門ticks進行計數一旦ticks數值達到100這個時候釋放Gil鎖線程之間開始競爭Gil鎖(說明:

      (3)ticks這個數值可以進行設置來延長或者縮減獲得Gil鎖的線程使用cpu的時間)

      以上就是pythongil的介紹,大家在了解基本的用法后,可以去找一些gil的實例進行練習。更多Python學習教程請關注IT培訓機構:千鋒教育。

      聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。

      猜你喜歡LIKE

      python是什么編程語言

      2023-11-08

      pythonprogram是什么

      2023-11-08

      python包和文件夾有什么區別

      2023-11-08

      最新文章NEW

      pythoninsert函數是什么

      2023-11-08

      pythongil是什么

      2023-11-08

      pythontry是什么意思

      2023-11-08

      相關推薦HOT

      更多>>

      快速通道 更多>>

      最新開班信息 更多>>

      網友熱搜 更多>>