鄭州Python培訓(xùn)機(jī)構(gòu ):兩(liǎng)種實(shí)現(xiàn)方式表現(xiàn)python多線(xiàn )程
來(lái)源:
奇酷教育 發(fā)表於:
鄭州Python培訓(xùn)機(jī)構(gòu )老師給大家帶來(lái)的內(nèi)容是關(guān)於python多線(xiàn )程的兩(liǎng)種實(shí)現(xiàn)方式(代碼教程),有一定的參考價(jià)值,有需要的朋友可以參考一下
鄭州Python培訓(xùn)機(jī)構(gòu )老師給大家帶來(lái)的內(nèi)容是關(guān)於python多線(xiàn )程的兩(liǎng)種實(shí)現(xiàn)方式(代碼教程),有一定的參考價(jià)值,有需要的朋友可以參考一下,希望對(duì)你有所幫助。
線(xiàn )程是輕量級(jí)的進(jìn)程,進(jìn)程中可劃(huà)分出多個(gè)線(xiàn )程,線(xiàn )程可獨(dú)立的調(diào)度運(yùn)行(進(jìn)程中分割出來(lái)的可以獨(dú)立運(yùn)行的實(shí)例) 例如:我們的電腦cpu可以同時(shí)運(yùn)行qq和微信,qq運(yùn)行時(shí)可以同時(shí)打開(kāi)多個(gè)聊天框. 在上述例子中qq 微信及進(jìn)程,每個(gè)聊天框為不同的線(xiàn )程

第一種:
利用threading中的Thread方法實(shí)現(xiàn)
import threadingimport timedef eat():
# 循環(huán)列印,延遲一秒
while True:
print("我在吃飯")
time.sleep(1)def drink():
while True:
print("我在喝水")
time.sleep(1)def main():
thr1 = threading.Thread(target=eat)
thr2 = threading.Thread(target=drink) # 創(chuàng)建並執(zhí)行線(xiàn )程
thr1.start()
thr2.start()if __name__ == '__main__':
main()
**第二種:
利用threading中的Timer函數(shù)**
import timeimport threadingdef eat():
# 循環(huán)列印
while True:
print("我在吃飯") # 延遲一秒
time.sleep(1)def drink():
while True:
print("我在喝水")
time.sleep(1)# 創(chuàng)建延遲觸發(fā),第一個(gè)參數(shù)為設(shè)置幾秒後開(kāi)始,第二個(gè)是執(zhí)行函數(shù)名thr1 = threading.Timer(1, eat)
thr2 = threading.Timer(1, drink)
thr1.start()
thr2.start()