Python執行緒操作
一、全域鎖定
1、在Python中,Python程式碼的執行由Python虛擬機來控制,而在Python虛擬機中,同一時刻只有一個執行緒在執行,就像單CPU的系統中運行多個進程一樣,記憶體中可以存放多個程序,但在任意時刻,只有一個程式在CPU中運作。同樣的,在Python解釋器中可以「運行」多個線程,但在任意時刻,只有一個線程在Python解釋器中運行。
2、對Python虛擬機的存取由全域解釋器鎖定【GIL】來控制,正是這個鎖定能保證同一時刻只有一個執行緒在運作。
3、多執行緒環境中,Python虛擬機器的執行方式為:
二、執行緒模組
Python提供了【thread】和【threading】模組。在多執行緒程式設計中,建議使用【threading】模組,這是因為:
1、在【thread】模組中,當主執行緒退出時,其他沒有被清除的執行緒沒有執行結束就會被退出。但在【threading】模組中能確保所有的「重要的」子線程(這裡的重要的子線程指的是守護線程)運行結束後,進程才會結束
2、在【threading】模組是更高階的執行緒模組,它不僅提供了Thread類,還提供了執行緒同步機制
thread模組
##內建函數
以上是python如何使用線程的詳細內容。更多資訊請關注PHP中文網其他相關文章!