執行緒的一些操作
阿新 • • 發佈:2018-11-04
from threading import Thread import threading import time from multiprocessing import Process import os def work(): import time time.sleep(1) # print('子執行緒',threading.get_ident()) #2608 print(threading.current_thread().getName()) #Thread-1 print(threading.current_thread()) #Thread-1 if __name__ == '__main__': #在主程序下開啟執行緒 t=Thread(target=work) t.start() # print(threading.current_thread())#主執行緒物件 #<_MainThread(MainThread, started 1376)> # print(threading.current_thread().getName()) #主執行緒名稱 #MainThread # print(threading.current_thread().ident) #主執行緒ID #1376 # print(threading.get_ident()) #主執行緒ID #1376 time.sleep(3) print(threading.enumerate()) # 連同主執行緒在內有兩個執行的執行緒,[<_MainThread(MainThread, started 13396)>, <Thread(Thread-1, started 572)>] print(threading.active_count()) # 2 print('主執行緒/主程序')
from threading import Thread,Event
e = Event() #e的狀態有兩種,False True,當事件物件的狀態為False的時候,wait的地方會阻塞
e.set() #將事件物件的狀態改為True
e.clear() #將事件物件的狀態改為Flase
print('在這裡等待')
e.wait() #阻塞
print('還沒好!!')