日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)Python教程:python中實現(xiàn)多線程有幾種方式?

我們都知道,代碼編程不是固定的東西,而是非常靈活的內(nèi)容,根據(jù)不同的內(nèi)容,我們可以拓展出很多條內(nèi)容,最終目的還是為了可以實現(xiàn)結(jié)果,給大家舉例說明其中一個最常用的多線程吧~以及實現(xiàn)的幾種方式。

成都創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),臨潁企業(yè)網(wǎng)站建設(shè),臨潁品牌網(wǎng)站建設(shè),網(wǎng)站定制,臨潁網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,臨潁網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。

1. 用函數(shù)創(chuàng)建多線程

在Python3中,Python提供了一個內(nèi)置模塊 threading.Thread,可以很方便地讓我們創(chuàng)建多線程。

舉個例子

import time
from threading import Thread
 
# 自定義線程函數(shù)。
def target(name="Python"):
    for i in range(2):
        print("hello", name)
        time.sleep(1)
 
# 創(chuàng)建線程01,不指定參數(shù)
thread_01 = Thread(target=target)
# 啟動線程01
thread_01.start()
 
 
# 創(chuàng)建線程02,指定參數(shù),注意逗號
thread_02 = Thread(target=target, args=("MING",))
# 啟動線程02
thread_02.start()

可以看到輸出

hello Python
hello MING
hello Python
hello MING

2. 用類創(chuàng)建多線程

相比較函數(shù)而言,使用類創(chuàng)建線程,會比較麻煩一點(diǎn)。

首先,我們要自定義一個類,對于這個類有兩點(diǎn)要求,

l 必須繼承 threading.Thread 這個父類;

l 必須復(fù)寫 run 方法。

來看一下例子為了方便對比,run函數(shù)我復(fù)用上面的main。

import time
from threading import Thread
 
class MyThread(Thread):
    def __init__(self, type="Python"):
        # 注意:super().__init__() 必須寫
        # 且最好寫在第一行
        super().__init__()
        self.type=type
 
    def run(self):
        for i in range(2):
            print("hello", self.type)
            time.sleep(1)
 
if __name__ == '__main__':
    # 創(chuàng)建線程01,不指定參數(shù)
    thread_01 = MyT
hread()
    # 創(chuàng)建線程02,指定參數(shù)
    thread_02 = MyThread("MING")
 
    thread_01.start()
thread_02.start()

當(dāng)然結(jié)果也是一樣的。

hello Python
hello MING
hello Python
hello MING

3. 線程對象的方法

上面介紹了當(dāng)前 Python 中創(chuàng)建線程兩種主要方法。

# 如上所述,創(chuàng)建一個線程
t=Thread(target=func)
 
# 啟動子線程
t.start()
 
# 阻塞子線程,待子線程結(jié)束后,再往下執(zhí)行
t.join()
 
# 判斷線程是否在執(zhí)行狀態(tài),在執(zhí)行返回True,否則返回False
t.is_alive()
t.isAlive()
 
# 設(shè)置線程是否隨主線程退出而退出,默認(rèn)為False
t.daemon = True
t.daemon = False
 
# 設(shè)置線程名
t.name = "My-Thread"

至此,Python線程基礎(chǔ)知識,我們大概都介紹完了。感興趣的小伙伴可以多瀏覽看下內(nèi)容哦~如果還想知道更多的python知識,可以到python學(xué)習(xí)網(wǎng)進(jìn)行查詢。


當(dāng)前題目:創(chuàng)新互聯(lián)Python教程:python中實現(xiàn)多線程有幾種方式?
文章來源:http://www.dlmjj.cn/article/cddheeo.html