首頁  >  文章  >  後端開發  >  python如何使用線程

python如何使用線程

silencement
silencement原創
2019-05-25 11:24:383398瀏覽

python如何使用線程

Python執行緒操作

一、全域鎖定

1、在Python中,Python程式碼的執行由Python虛擬機來控制,而在Python虛擬機中,同一時刻只有一個執行緒在執行,就像單CPU的系統中運行多個進程一樣,記憶體中可以存放多個程序,但在任意時刻,只有一個程式在CPU中運作。同樣的,在Python解釋器中可以「運行」多個線程,但在任意時刻,只有一個線程在Python解釋器中運行。

2、對Python虛擬機的存取由全域解釋器鎖定【GIL】來控制,正是這個鎖定能保證同一時刻只有一個執行緒在運作。

3、多執行緒環境中,Python虛擬機器的執行方式為:

python如何使用線程

二、執行緒模組

Python提供了【thread】和【threading】模組。在多執行緒程式設計中,建議使用【threading】模組,這是因為:

1、在【thread】模組中,當主執行緒退出時,其他沒有被清除的執行緒沒有執行結束就會被退出。但在【threading】模組中能確保所有的「重要的」子線程(這裡的重要的子線程指的是守護線程)運行結束後,進程才會結束

2、在【threading】模組是更高階的執行緒模組,它不僅提供了Thread類,還提供了執行緒同步機制

thread模組

##內建函數

python如何使用線程


以上是python如何使用線程的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn