Thread 的构造函数有一个参数 name,它是用来为线程命名的,如果没有提供这个参数,则系统
在创建线程对象时会自动生成一个名字。可以通过这个参数为线程命名,以区分和跟踪线程。例如:
#thread_name.py
import threading
import time
def thread_A():
print(threading.current_thread().getName(), 'Starting')
time.sleep(2)
print(threading.current_thread().getName(), 'Exiting')
def thread_B():
print(threading.current_thread().getName(), 'Starting')
time.sleep(3)
print(threading.current_thread().getName(), 'Exiting')
t = threading.Thread(name='thread_A', target=thread_A)
w = threading.Thread(name='thread_B', target=thread_B)
w2 = threading.Thread(target=thread_A) #使用默认的名字
w.start()
w2.start()
t.start()
程序输出如下:
thread_B Starting
Thread-6 Starting
thread_A Starting
Thread-6 Exiting
thread_A Exiting
thread_B Exiting