位置: IT常识 - 正文

Python中Thread子类如何封装(python子类init)

编辑:rootadmin

推荐整理分享Python中Thread子类如何封装(python子类init),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python中的threading.thread,python子类init,python子类init,python thread类,python中thread函数,python thread类,python中的threading.thread,python thread类,内容如对您有帮助,希望把文章链接给更多的朋友!

Thread子类的封装

通过使用threading模块能完成多任务的程序开发,为了让每个线程的封装性更完美,所以使用threading模块时,往往会定义一个新的子类class,只要继承threading.Thread就可以了,然后重写run方法。

#coding=utf-8importthreadingimporttimeclassMyThread1(threading.Thread):defrun(self):foriinrange(3):time.sleep(1)msg="I'm"+self.name+'@'+str(i)#name属性中保存的是当前线程的名字print(msg)classMyThread2(threading.Thread):defrun(self):foriinrange(3):time.sleep(1)msg="I'm"+self.name+'@'+str(i)#name属性中保存的是当前线程的名字print(msg)if__name__=='__main__':t1=MyThread1()t2=MyThread2()t1.start()t2.start()

运行结果为:

说明:

python的threading.Thread类有一个run方法,用于定义线程的功能函数,可以在自己的线程类中覆盖该方法。

Python中Thread子类如何封装(python子类init)

创建自己的线程实例后,通过Thread类的start方法,可以启动该线程,当该线程获得执行的机会时,就会调用run方法执行线程。

相关推荐:《Python视频教程》

2. 线程的执行顺序

#coding=utf-8importthreadingimporttimeclassMyThread(threading.Thread):defrun(self):foriinrange(3):time.sleep(1)msg="I'm"+self.name+'@'+str(i)#name属性中保存的是当前线程的名字print(msg)deftest():foriinrange(1,5):t=MyThread()t.start()if__name__=='__main__':test()

运行结果为:

说明:

从代码和执行结果我们可以看出,多线程程序的执行顺序是不确定的。当执行到sleep语句时,线程将被阻塞(Blocked),到sleep结束后,线程进入就绪(Runnable)状态,等待调度。而线程调度将自行选择一个线程执行。上面的代码中只能保证每个线程都运行完整个run函数,但是线程的启动顺序、run函数中每次循环的执行顺序都不能确定。

总结:

每个线程一定会有一个名字,尽管上面的例子中没有指定线程对象的name,但是python会自动为线程指定一个名字。

当线程的run()方法结束时该线程完成。

无法控制线程调度程序,但可以通过别的方式来影响线程调度的方式。

线程的几种状态

本文链接地址:https://www.jiuchutong.com/zhishi/313005.html 转载请保留说明!

上一篇:WordPress安全防护 你可以做这些事情(wordpress防盗链)

下一篇:dedecms织梦描述description长度限制修改方法(织梦栏目描述调用)

  • 怎么修改金税盘登录密码
  • 所得税汇算清缴账务处理
  • 初次购买金税盘一般多少钱
  • 公司收到分红怎么交税
  • 进口产品销售需要什么资质
  • 综合单价的调整计算公式
  • 金税盘当月不抵扣如何做分录
  • 软件公司主营业务是什么
  • 没有纸质机票电子行程单电子版可以报销吗
  • 公司对供应商罚款合法吗
  • 短期借款会计核算
  • 固定资产抵债要交税吗怎么交
  • 注册资本金印花税什么时候缴纳
  • 银行收到对方付款的会计分录
  • 同一客户应收应付可以相互抵消吗
  • 融资租赁与经营租赁相比具有的优势
  • 预交增值税怎么入账
  • 红冲增值税专用发票需要收回原发票吗
  • 小规模税控盘280服务费怎么申报
  • 关于个人所得税纳税人的说法正确的有
  • 逃避的概念
  • 增值税出口退税计算
  • 计提工资和实际发放工资
  • 税务利润表怎么填
  • 代理国库税收收缴怎么做账
  • 年平均息税前利润是什么意思
  • 外贸出口支付方式
  • 1697507434
  • 房屋租赁费属于什么服务
  • 赊销的账务处理流程
  • 固定资产作为投资入股为何体现在资本公积
  • 华为mate40怎么打开开发者选项
  • 电脑bios打开usb接口
  • 苹果紧急提醒
  • php数组函数大全
  • 公司向股东还款的会计分录
  • win10输入法没有候选词
  • 煤炭企业的会计科目
  • 发票开烟酒
  • 印花税需要交钱吗
  • 蒙特利尔 攻略
  • 土地增值税的计算
  • bert模型能做什么
  • 文件不知道在哪怎么找
  • 购物卡怎么开发票比较好
  • 计提租金怎么做会计分录
  • 纳税人有什么义务
  • 土建工程怎么入账
  • openglskia是什么意思
  • 不动产简易征收增值税发票 可以抵扣
  • 资质使用费怎么收
  • 房产税计入管理费用还是税金附加
  • 公允价值变动损益在利润表哪里
  • mysql中如何设置默认值
  • 信息技术服务费属于什么费用
  • 中小微企业有哪些企业
  • 坏账准备的账务处理怎么理解
  • 水表怎么借水
  • 工程结算和工程竣工决算的区别
  • 审计测试会计分录怎么做
  • 如何编写wa
  • sql语句学习
  • sql server 2005如何使用
  • sqlserver中时间类型
  • win9有吗
  • vista升级选项灰色
  • 怎么修改ubuntu的ip地址
  • win10屏幕亮度怎么调节快捷键
  • mac如何备份到icloud
  • 在linux 上使用QQ聊天程序
  • win8.1不能关机
  • opengl怎么学
  • nodejs跳转到指定页面
  • jquery实现移动端
  • javascript中的函数包括内置函数和自定义函数
  • 使用筷子就餐会不会传染乙肝病毒
  • 云南省国家税务总局
  • 处理报废固定资产
  • 成都租房备案凭证怎么办理
  • 内蒙古自治区市
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设