题解 | #多线程打印#

多线程打印

http://www.nowcoder.com/practice/835d678e89a848508389c462e5173252

条件锁例题


from threading import Thread
import threading


def work1(cond):
    # for i in range(1,53,2)

    data = zip(range(1, 53, 2), range(2, 53, 2))
    for i in data:
        with cond:
            print(*i, sep="",end="")
            cond.notify()
            cond.wait()


def work2(cond):
    data = [chr(i) for i in range(ord('A'), ord('Z')+1)]
    for i in data:
        with cond:
            cond.wait()
            print(i,end=" ")
            cond.notify()


if __name__ == "__main__":
    cond=threading.Condition()
    tar1=threading.Thread(target=work1,args=(cond,))
    tar2=threading.Thread(target=work2,args=(cond,))
    tar2.start()
    tar1.start()

全部评论

相关推荐

11-01 20:03
已编辑
门头沟学院 算法工程师
Amazarashi66:这种也是幸存者偏差了,拿不到这个价的才是大多数
点赞 评论 收藏
分享
Noob1024:一笔传三代,人走笔还在
点赞 评论 收藏
分享
评论
1
收藏
分享
牛客网
牛客企业服务