執行緒(四) 使用threading模組建立執行緒

2021-08-19 16:41:04 字數 1390 閱讀 1983

# coding:utf-8

'''threading 模組介紹:

1.threading 是對thread模組的再封裝

2.threading 模組支援守護執行緒

3.守護執行緒 :守護正常執行緒不會因為程序結束而被打斷

守護執行緒會在所有執行緒結束之後執行

在程序要結束之前會對守護執行緒進行檢測,如果守護執行緒沒有被執行,

程序就不會結束而在等待中,如果守護執行緒在執行就會程序結束

threading.thread(target,args) 建立執行緒,但沒有啟動執行緒

初學只需要用到兩個引數

target 執行緒所要載入的函式

args 被載入函式所需要的引數

.start() 開啟執行緒

.join() 掛起執行緒

在thread模組中

thread.start_new_thread()方法不僅建立了執行緒而且啟動了執行緒

'''import threading

import time

defloop

(nloop,nsec):

print("loop%s is start at:"%nloop,time.ctime())

time.sleep(nsec)

print("loop%s is stop at:"%nloop,time.ctime())

defmain

(): print("all is start at :",time.ctime())

sleep_list=[2,3,4,2,1]

thread_list=

for i in range(len(sleep_list)):

t = threading.thread(target=loop,args=(i,sleep_list[i])) #建立執行緒,但沒有啟動執行緒

for i in thread_list:

print(i) #為了直觀的看到所有的執行緒,將建立的執行緒列印出來

for i in range(len(sleep_list)):

thread_list[i].start() #開啟執行緒

for i in range(len(sleep_list)):

thread_list[i].join() #掛起執行緒,但是執行緒沒有結束,被暫停了

#可以再次列印執行緒列表看出來

print('---------------------------')

for i in thread_list:

print(i) #列印被掛起的執行緒

if __name__ == '__main__':

main()

python之多執行緒threading模組的使用

import threading print threading.active count 返回當前存活的執行緒數量 輸出1 print threading.enumerate 返回當前所有存活的執行緒列表 輸出 mainthread started print threading.current ...

Python之多執行緒 Threading模組

1 threading模組提供的類 thread,lock,rlock,condition,semaphore,event,timer,local 2 threading模組提供的常用的方法 1 threading.currentthread 返回當前的執行緒變數。2 threading.enume...

執行緒模組threading

程序 主線程 子執行緒 全域性變數global n執行緒共享 from multiprocessing import process from threading import thread import time def cal num i i 1 if name main p list star...