GIL

在python的原始解釋器CPython中存在著GIL(Global Interpreter Lock,全局解釋器鎖),因此在解釋執(zhí)行python代碼時,會產(chǎn)生互斥鎖來限制線程對資源的訪問,直到解釋器遇到I/O操作或者次數(shù)達(dá)到一定數(shù)目時才會釋放GIL。所以,CPython的線程庫直接封裝了系統(tǒng)的原生線程,但CPython整體作為一個進(jìn)程,同時只會有一個獲得GIL的線程在運(yùn)行,其他線程則處于等待狀態(tài)。這就造成了即使在多核cpu中,多線程也只是做著分時切換而已。不過multiprocess的出現(xiàn),已經(jīng)可以讓多進(jìn)程的python代碼編寫簡化到了類似多線程的程度

解決GIL:

1.能使用進(jìn)程不用線程
2.高效的代碼(多線程執(zhí)行的任務(wù))使用c,c++來編寫

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 轉(zhuǎn)一篇關(guān)于Python GIL的文章。歸納一下,CPU的大規(guī)模電路設(shè)計基本已經(jīng)到了物理意義的盡頭,所有廠商們都開始...
    SeanCheney閱讀 11,331評論 0 12
  • python之理解GIL 1、GIL簡介 GIL的全稱為Global Interpreter Lock,全局解釋器...
    道無虛閱讀 9,778評論 0 1
  • 前言:博主在剛接觸Python的時候時常聽到GIL這個詞,并且發(fā)現(xiàn)這個詞經(jīng)常和Python無法高效的實現(xiàn)多線程劃上...
    whypro閱讀 1,262評論 0 1
  • 前言:博主在剛接觸Python的時候時常聽到GIL這個詞,并且發(fā)現(xiàn)這個詞經(jīng)常和Python無法高效的實現(xiàn)多線程劃上...
    LazzMan閱讀 611評論 0 1
  • 百度釋義:客情關(guān)系是指產(chǎn)品、服務(wù)提供者,與其客戶之間的情感聯(lián)系!從某種意義上來說,客情關(guān)系是公共關(guān)系營銷的一個分支...
    8b15323bc64a閱讀 2,283評論 0 0

友情鏈接更多精彩內(nèi)容