python多线程知识-实用实例

Posted 思进取,逆进行

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python多线程知识-实用实例相关的知识,希望对你有一定的参考价值。

python多线程使用场景:IO操作,不适合CPU密集操作型任务
 
1、多个线程内存共享
2、线程同时修改同一份数据需要加锁,mutex互斥锁
3、递归锁:多把锁,锁中有锁
4、python多线程,同一时间只有颗CPU在执行。
 
启动线程:
 1 import threading
 2 def run(name)
 3     print("run thread....")
 4 
 5 #创建进程对象,target=方法名,args=(参数1,参数b,)
 6 t = threading.Thread(target=run,args=(n,))
 7 #设置守护线程
 8 t.setDaemon(True)
 9 #启动线程
10 t.start()
11 #等待线程结束
12 t.jion()

 

型号量使用(线程池)

 1 import threading
 2 import time
 3 
 4 def run(n):
 5     #加锁
 6     semaphore.acquire()
 7     print("Look:%s"%n)
 8     time.sleep(0.5)
 9     #释放锁
10     semaphore.release()
11 
12 if __name__ == "__main__":
13     #同时准许5个线程
14     semaphore = threading.BoundedSemaphore(5)
15     tlist = []
16     #设置多少个线程
17     for i in range(33):
18         t = threading.Thread(target=run,args=(i,))
19         t.start()
20         tlist.append(t)
21     for r in tlist:
22         r.jion()

 

以上是关于python多线程知识-实用实例的主要内容,如果未能解决你的问题,请参考以下文章

python核心编程第二版

python小白学习记录 多线程爬取ts片段

Java多线程锁的知识实例讲解

python 多线程

python多线程

《Python机器学习及实践》----模型实用技巧