GIL(全局解釋器鎖)與互斥鎖

在GIL(全局解釋器鎖)與互斥鎖的前提下,程序的運行過程分析

針對Cpython所擁有的GIL鎖
作用:由於Cpython解釋器在運行python文件時,
     Cpython進程與其運行文件所產生的主進程是一個進程(文件進程相當於Cpython的一個線程)
     線程的特點是數據資源是共享的,而多個線程又都要共享Cpython的解釋權限,共享意味着競爭,有競爭數據就不安全,
     所以Cpython的GIL鎖(Cpython的一個線程)
     就產生了,根本作用是,當python文件中的線程想要執行其代碼,必須獲得GIL權限,否則不能執行,
     所以cpu的多核優勢也沒有了,除非多開Cpython解釋器或多進程,否則同時只能運行一個線程

互斥鎖作用:
    互斥鎖用於python文件運行進程(線程)時,使數據修改等操作的競爭變得有序化


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章