python真正實現(xiàn)多線程 python的多線程是怎么實現(xiàn)的,聽說底層是依據(jù)win32的線層實現(xiàn)?
python的多線程是怎么實現(xiàn)的,聽說底層是依據(jù)win32的線層實現(xiàn)?Python使用全局解釋器鎖(global interpreter lock,簡稱Gil)來守衛(wèi)解釋器的門,保護C API調(diào)用,如
python的多線程是怎么實現(xiàn)的,聽說底層是依據(jù)win32的線層實現(xiàn)?
Python使用全局解釋器鎖(global interpreter lock,簡稱Gil)來守衛(wèi)解釋器的門,保護C API調(diào)用,如果有a、B、C三個線程同時運行,如果一個線程進入解釋器,Gil會將B、C擋在門外,在線程調(diào)度中,會重新調(diào)度一個線程進入解釋器,至于什么時候安排,打電話sys.getcheckinterval()檢查。也可以通過set進行設(shè)置。至于調(diào)度哪個線程,原則上完全由操作決定,系統(tǒng)模擬操作系統(tǒng)的本機線程。