当前位置:编程学堂 > python多线程基本用法

python多线程基本用法

  • 发布:2023-09-09 17:38

python是假的多线程(只是轮流进行而已),

它不适于cpu计算密集型的操作(这样反而会变慢),

但适用于 I/O密集型的操作,(网络请求,文件读取)----很适用于网络爬取.

import threading#多线程的实现方法:#实现方法1:
def function():for i in range(10):print(i)
t1=threading.Thread(target=function)
t2=threading.Thread(target=function)
t1.start()
t2.start()#实现方法2:类似java
class MyThread(threading.Thread):def run(self):for i in range(10):print(i,threading.current_thread())
MyThread().start()#线程数量
num=threading.enumerate()
print("啊",num,"啊")#显示当前线程:
print(threading.current_thread())print("--------------------------------------------------------")
#全局变量:
#多线程在一个进程里面,所以进程中的全局变量在进程种都可以使用
Value=0
def add():global Valuefor x in range(100):Value += 1print(Value)
for i in  range(2):t=threading.Thread(target=add)t.start()#锁机制:
#把所有涉及到对公共资源修改的操作都加上锁
lock=threading.Lock()
def add():global Valuelock.acquire()for x in range(100):Value += 1print(Value)lock.release()

 

相关文章