Python多线程,线程同步

Python多线程,线程同步,第1张

概述importthreadingimporttimeexitFlag=0classmyThread(threading.Thread):def__init__(self,threadID,name,counter):threading.Thread.__init__(self)self.threadID=threadID#线程IDself.name=name
import threadingimport timeexitFlag =0class myThread(threading.Thread):    def __init__(self, threadID, name, counter):        threading.Thread.__init__(self)        self.threadID= threadID               #线程ID        self.name = name                      #线程名称        self.counter =counter                 #工作次数    def run(self):        print("开始线程" + self.name)        #获取线程锁,用于线程同步,在程序结束前,其他线程函数不会执行        threadLock.acquire()        print_time(self.name, self.counter, 5)        print("退出线程" + self.name)        #释放线程锁,开启下一个线程工作        threadLock.release()#线程工作内容def print_time(threadname, wait_sec, counter):    #传入线程名称,延迟时间,工作次数    while counter:        if exitFlag:            threadname.exit()        time.sleep(wait_sec)                 #延迟时间        print("%s: %s" % (threadname, time.ctime(time.time())))        counter -=1#创建线程锁,用于线程同步threadLock =threading.Lock()#创建线程列表,将线程放入线程列表中顺序执行threads =[]#创建新线程thread1= myThread(1,"thread-1",1)thread2= myThread(2,"thread-2",1)#开启新线程thread1.start()thread2.start()#将线程加入线程列表threads.append(thread1)threads.append(thread2)#循环遍历线程函数,线程按顺序进行工作for t in threads:    t.join()print("退出主线程.......")

 

总结

以上是内存溢出为你收集整理的Python 多线程,线程同步全部内容,希望文章能够帮你解决Python 多线程,线程同步所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1185325.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存