方法
|
说明
|
run
|
用以表示线程活动的方法
|
start
|
请的线程活动
|
join([time])
|
设置主线程会等待time秒后再往下执行,time默认为子线程结束,多个子线程之间设置的值会叠加
|
isAlive
|
返回线程是否活动的
|
getName
|
返回线程名
|
setName
|
设置线程名
|
1 import time 2 import threading 3 4 5 def func1(): 6 for i in range(5): 7 print("---正在做事情1-----") 8 time.sleep(1) 9 10 11 def func2(): 12 for i in range(6): 13 print("---正在做事情2-----") 14 time.sleep(1) 15 16 def main(): 17 # 创建一个线程执行func1 18 t1 = threading.Thread(target=func1) 19 # 创建一个线程执行func1 20 t2 = threading.Thread(target=func2, name=‘th_2‘) 21 s_time = time.time() 22 print(t2.getName()) 23 # 开始执行线程1 24 t1.start() 25 # 开始执行线程2 26 t2.start() 27 # 主线程等待子线程执行完后再往下执行 28 t1.join() 29 t2.join() 30 e_time = time.time() 31 print("耗时: ", e_time - s_time) 32 33 main()
1 # 通过继承Thread类类创建线程 2 class RequestThread(threading.Thread): 3 """发送request请求""" 4 # 传参数需重写__init__方法(重写后要调用父类__init__方法) 5 def __init__(self, url): 6 self.url = url 7 super().__init__() 8 9 def run(self): 10 res = requests.get(self.url) 11 print("线程:%s ---返回的状态码:%s" % (threading.current_thread(), res.status_code)) 12 13 14 for i in range(5): 15 t = RequestThread(‘http://www.baidu.com‘) 16 t.start()
原文:https://www.cnblogs.com/xi77/p/14529237.html