首页 > 编程语言 > 详细

多线程介绍和多线程模块

时间:2017-02-10 18:34:21      阅读:157      评论:0      收藏:0      [点我收藏+]

多线程介绍和多线程模块


线程的特点:

线程的生命周期

开始

运行

结束


线程的退出:

进程执行完成

线程的退出方法

python的系统推出


模块函数

start_new_thread(func, args)

allocate_lock()

exit()

[root@133 managehosts]# vim thread01.py 

#!/usr/bin/env python
#encoding:utf8
import thread
import time
def func(name , i):
    for n in xrange(i):
        print name, n
        time.sleep(1)

thread.start_new_thread(func,(‘声音‘, 3))
thread.start_new_thread(func,(‘画面‘, 3))

time.sleep(3)
[root@133 managehosts]# python thread01.py 
声音 0
画面 0
声音 1
画面 1
声音 2
画面 2


LockType对象方法

lock= thread.allocate_lock() 生成锁对象

lock.acquire()   加锁

lock.locked()     查看锁状态

lock.release()    多线程调度释放锁,使用前线程必须已经获得锁定,否则将抛出异常。

[root@133 managehosts]# vim thread01.py 

#!/usr/bin/env python
#encoding:utf8
import thread
import time
def func(name , i, l):
    for n in xrange(i):
        print name, n
        time.sleep(1)
    l.release()  #release解锁

lock = thread.allocate_lock() #申请一把锁
lock.acquire()  #获取并使用这把锁

thread.start_new_thread(func,(‘声音‘, 5, lock))
thread.start_new_thread(func,(‘画面‘, 5, lock))

while lock.locked(): #True,pass,一直处于锁定状态
    pass

print lock.locked() #解锁后,值为False
print "Exit main process"


[root@133 managehosts]# python thread01.py 
声音 画面 00

画面 1
声音 1
画面 2
声音 2
画面 3
声音 3
画面 4
声音 4
False
Exit main process


本文出自 “梅花香自苦寒来!” 博客,请务必保留此出处http://daixuan.blog.51cto.com/5426657/1896770

多线程介绍和多线程模块

原文:http://daixuan.blog.51cto.com/5426657/1896770

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!