题解 | #多线程打印#

多线程打印

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-24 20:55
阿里国际 Java工程师 2.7k*16.0
程序员猪皮:没有超过3k的,不太好选。春招再看看
点赞 评论 收藏
分享
我见java多妩媚:大外包
点赞 评论 收藏
分享
评论
1
收藏
分享
牛客网
牛客企业服务