不懂python中調(diào)用線程的方法?其實(shí)想解決這個(gè)問(wèn)題也不難,下面讓小編帶著大家一起學(xué)習(xí)怎么去解決,希望大家閱讀完這篇文章后大所收獲。
創(chuàng)新互聯(lián)建站制作網(wǎng)站網(wǎng)頁(yè)找三站合一網(wǎng)站制作公司,專(zhuān)注于網(wǎng)頁(yè)設(shè)計(jì),成都網(wǎng)站制作、網(wǎng)站建設(shè),網(wǎng)站設(shè)計(jì),企業(yè)網(wǎng)站搭建,網(wǎng)站開(kāi)發(fā),建網(wǎng)站業(yè)務(wù),680元做網(wǎng)站,已為上千服務(wù),創(chuàng)新互聯(lián)建站網(wǎng)站建設(shè)將一如既往的為我們的客戶(hù)提供最優(yōu)質(zhì)的網(wǎng)站建設(shè)、網(wǎng)絡(luò)營(yíng)銷(xiāo)推廣服務(wù)!
Python調(diào)用線程有兩種情況,一種是在主線程中直接調(diào)用,還一種是直接在其他方法中調(diào)用線程
在傳遞參數(shù)的方式上有所區(qū)別,兩種調(diào)用方法如下
1. 主進(jìn)程中直接調(diào)用線程:
from threading import Thread import time def sayhi(name,input,number): for i in range(1,10): if number == "線程號(hào)1": time.sleep(2) print("這是線程號(hào):%s - %s say hello %s - %s" % (number,name, str(i),input)) else : time.sleep(1) print("線程號(hào):%s - %s say hello %s - %s 休息1秒" % (number,name, str(i),input)) if __name__ == '__main__': for i in range(1,3): t = Thread(target=sayhi, args=('mike','to you',"線程號(hào)"+str(i) )) t.start() print("主線程結(jié)束")
2.在方法中調(diào)用線程:
在方法中調(diào)用線程的時(shí)候,如果不想另外寫(xiě)一個(gè)class,也不想用self參數(shù),
在寫(xiě)Thread(target=Th3, args=(input,))的時(shí)候,記得args數(shù)的最后中加一個(gè)“逗號(hào)”,這樣表明你傳的是一個(gè)數(shù)據(jù)元組
否則會(huì)報(bào)“takes 1 positional argument but 2 were given”這種錯(cuò)誤,因?yàn)閭魅氲膮?shù)數(shù)量識(shí)別時(shí)出現(xiàn)了問(wèn)題
# -*- coding: utf-8 -*- import time from threading import Thread def doWork(input): global interval try: print("begin") if "DERNAV" in input.upper(): t = Thread(target=Th2, args=(input,)) t.start() elif "PBD9008" in input.upper(): t = Thread(target=Th3, args=(input,)) t.start() except Exception as e : print(e) def Th2(input): for i in range(1,10): print(input+"_"+time.strftime('%Y.%m.%d %H:%M:%S')) time.sleep(1) def Th3(input): for i in range(1,10): print(input+"_"+time.strftime('%Y.%m.%d %H:%M:%S')) time.sleep(2) def run(interval): while True: try: doWork("PBD9008") doWork("DERNAV") time_remaining = interval - time.time() % interval time.sleep(time_remaining) except Exception as e: print(e) if __name__ == '__main__': global interval interval = 300 text = run(interval)
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享python中調(diào)用線程的方法內(nèi)容對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,遇到問(wèn)題就找創(chuàng)新互聯(lián),詳細(xì)的解決方法等著你來(lái)學(xué)習(xí)!
文章名稱(chēng):python中調(diào)用線程的方法
文章地址:http://chinadenli.net/article22/ihjejc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司、網(wǎng)站營(yíng)銷(xiāo)、網(wǎng)站制作、域名注冊(cè)、網(wǎng)站設(shè)計(jì)公司、網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
網(wǎng)頁(yè)設(shè)計(jì)公司知識(shí)