由於執行緒是作業系統直接支援的執行單元,因此,高階語言通常都內建多執行緒的支持,Python也不例外,而且,Python的執行緒是真正的Posix Thread,而不是模擬出來的執行緒。
Python的標準函式庫提供了兩個模組:_thread和threading,_thread是低階模組,threading是高階模組,對_thread進行了封裝。絕大多數情況下,我們只需要使用threading這個高階模組。 (推薦學習:Python影片教學)
啟動一個執行緒就是把一個函數傳入並建立Thread實例,然後呼叫start()開始執行:
import time, threading# 新线程执行的代码:def loop(): print('thread %s is running...' % threading.current_thread().name) n = 0 while n < 5: n = n + 1 print('thread %s >>> %s' % (threading.current_thread().name, n)) time.sleep(1) print('thread %s ended.' % threading.current_thread().name) print('thread %s is running...' % threading.current_thread().name) t = threading.Thread(target=loop, name='LoopThread') t.start() t.join() print('thread %s ended.' % threading.current_thread().name)
執行結果如下:
thread MainThread is running... thread LoopThread is running... thread LoopThread >>> 1 thread LoopThread >>> 2 thread LoopThread >>> 3 thread LoopThread >>> 4 thread LoopThread >>> 5 thread LoopThread ended. thread MainThread ended.
由於任何進程預設就會啟動一個線程,我們把該線程稱為主線程,主線程又可以啟動新的線程,Python的threading模組有個current_thread()函數,它永遠傳回目前執行緒的實例。主執行緒實例的名字叫MainThread,子執行緒的名字在創建時指定,我們用LoopThread命名子執行緒。名字僅在印刷時用來顯示,完全沒有其他意義,如果不起名字Python就自動給線程命名為Thread-1,Thread-2…
更多Python相關技術文章,請訪問Python教學欄位進行學習!
以上是python中如何安裝threading的詳細內容。更多資訊請關注PHP中文網其他相關文章!