新聞中心
由于線程是操作系統(tǒng)直接支持的執(zhí)行單元,因此,高級語言通常都內(nèi)置多線程的支持,python也不例外,并且,Python的線程是真正的Posix Thread,而不是模擬出來的線程。

創(chuàng)新互聯(lián)專注于嵩縣網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供嵩縣營銷型網(wǎng)站建設(shè),嵩縣網(wǎng)站制作、嵩縣網(wǎng)頁設(shè)計、嵩縣網(wǎng)站官網(wǎng)定制、小程序制作服務(wù),打造嵩縣網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供嵩縣網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
Python的標(biāo)準(zhǔn)庫提供了兩個模塊:_thread和threading,_thread是低級模塊,threading是高級模塊,對_thread進(jìn)行了封裝。絕大多數(shù)情況下,我們只需要使用threading這個高級模塊。
啟動一個線程就是把一個函數(shù)傳入并創(chuàng)建Thread實例,然后調(diào)用start()開始執(zhí)行:
import time, threading# 新線程執(zhí)行的代碼: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)執(zhí)行結(jié)果如下:
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.
由于任何進(jìn)程默認(rèn)就會啟動一個線程,我們把該線程稱為主線程,主線程又可以啟動新的線程,Python的threading模塊有個current_thread()函數(shù),它永遠(yuǎn)返回當(dāng)前線程的實例。
主線程實例的名字叫MainThread,子線程的名字在創(chuàng)建時指定,我們用LoopThread命名子線程。
名字僅僅在打印時用來顯示,完全沒有其他意義,如果不起名字Python就自動給線程命名為Thread-1,Thread-2……
網(wǎng)頁名稱:創(chuàng)新互聯(lián)Python教程:python為什么可以多線程
文章URL:http://m.5511xx.com/article/dpddiec.html


咨詢
建站咨詢
