时间:2021-05-22
一、线程创建方法
1. 普通创建
import threadingdef run(name): for i in range(3): print(name)if __name__ == '__main__': t1 = threading.Thread(target=run, args=("t1",)) t2 = threading.Thread(target=run, args=("t2",)) t1.start() t2.start()--------------------------------------------t1t2t2t1t2t12. 自定义线程类
import threadingclass MyThread(threading.Thread): def __init__(self, name): super(MyThread, self).__init__() self.name = name def run(self): for i in range(3): print(self.name)if __name__ == "__main__": t1 = MyThread("t1") t2 = MyThread("t2") t1.start() t2.start()二、线程的使用
1.守护线程
子线程会随着主线程的结束而结束
t = threading.Thread(target=run, args=("t1",))
t.setDaemon(True) # 把子进程设置为守护线程,必须在start()之前设置
t.start()
2.主线程等待子线程结束
t = threading.Thread(target=run, args=("t1",))
t.setDaemon(True)
t.join() # 设置主线程等待子线程结束
t.start()
3.互斥锁
from threading import Thread,Lockn = 10def run(): global n locker.acquire() n -= 1 locker.release()if __name__ == '__main__': locker = Lock() t1 = Thread(target=run) t2 = Thread(target=run) t1.start() t2.start()以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
前面已经演示了Python:使用threading模块实现多线程编程二两种方式起线程和Python:使用threading模块实现多线程编程三threading
使用threading.Event可以实现线程间相互通信,之前的Python:使用threading模块实现多线程编程七[使用Condition实现复杂同步]我
Python中多线程使用到Threading模块。Threading模块中用到的主要的类是Thread,我们先来写一个简单的多线程代码:复制代码代码如下:#co
python是支持多线程的,主要是通过thread和threading这两个模块来实现的,本文主要给大家分享python实现多线程网页爬虫一般来说,使用线程有两
在Python多线程中如何创建一个线程对象如果你要创建一个线程对象,很简单,只要你的类继承threading.Thread,然后在__init__里首先调用th