python 锁

作者: admin 分类: python 发布时间: 2011-01-13 11:16 ė 6 没有评论

前看后忘 记录一下

#!/usr/bin/python
import thread
from time import sleep,ctime

loops=[4,2]
def loop(nloop,nsec,lock):
    print ‘start loop’,nloop,’at:’,ctime()
    sleep(nsec)
    print ‘loop’,nloop,’done at:’,ctime()
    lock.release()

def main():
    print ‘starting at:’,ctime()
    locks=[]
    nloops=range(len(loops)) 计算列表的下表,生成序列

    for i in nloops:
        lock=thread.allocate_lock()  创建一个锁
        lock.acquire()   获取锁也可以理解成锁上
        locks.append(lock)  然后把锁追加到locks列表里面去

    for i in nloops:
        thread.start_new_thread(loop,(i,loops[i],locks[i])) 产生新的线程

    for i in nloops:
        while locks[i].locked():pass

        print ‘all DONE at:’,ctime()

if __name__==’__main__’:
    main()

本文出自 小Q,转载时请注明出处及相应链接。

本文永久链接: http://www.linuxqq.com/archives/638.html

0
更多
Ɣ回顶部