python多线程

python的线程操作在旧版本中使用的是thread模块,在Python27和Python3中引入了threading模块,同时thread模块在Python3中改名为_thread模块,threading模块相较于thread模块,对于线程的操作更加的丰富,而且threading模块本身也是相当于对thread模块的进一步封装而成,thread模块有的功能threading模块也都有,所以涉及到对线程的操作,推荐使用threading模块,

案例一

#coding=utf-8
#线程第一节例子
import threading
num=500;
mlock=threading.Lock();#创建多线程锁
def test():
	global num;
	for i in xrange(0,100):
		mlock.acquire();#加锁
		num+=1;
		mlock.release();#释放锁

for item in xrange(0,10):
	d=threading.Thread(target=test);
	d.start();#启动线程
	d.join();#阻塞主线程等待子线程执行完成后主线程在执行完成
print u" money is %s" % num;

  案例二

#线程第二个例子
info=[1,2,3,4,55,233];
import threading
def test(p):
	print p;
res=[];
for item in info:
	d = threading.Thread(target=test,args=[item]);
	d.start();
	res.append(d);
for obj in res:
	obj.join();

  

原文地址:https://www.cnblogs.com/zh718594493/p/12383006.html