位置: 编程技术 - 正文

Python实现简单多线程任务队列(python简单gui)

编辑:rootadmin

推荐整理分享Python实现简单多线程任务队列(python简单gui),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python如何编写多行代码,python简单么,python怎么运行多行代码,python如何编写多行代码,python如何编写多行代码,python 简单,python %s 多个,python如何编写多行代码,内容如对您有帮助,希望把文章链接给更多的朋友!

最近我在用梯度下降算法绘制神经网络的数据时,遇到了一些算法性能的问题。梯度下降算法的代码如下(伪代码):

一般来说,当网络请求 plot.ly 绘图时会阻塞等待返回,于是也会影响到其他的梯度下降函数的执行速度。

一种解决办法是每调用一次 plotly.write 函数就开启一个新的线程,但是这种方法感觉不是很好。 我不想用一个像 cerely(一种分布式任务队列)一样大而全的任务队列框架,因为框架对于我的这点需求来说太重了,并且我的绘图也并不需要 redis 来持久化数据。

那用什么办法解决呢?我在 python 中写了一个很小的任务队列,它可以在一个单独的线程中调用 plotly.write函数。下面是程序代码。

首先我们继承 Queue.Queue 类。从 Queue.Queue 类可以继承 get 和 put 方法,以及队列的行为。

初始化的时候,我们可以不用考虑工作线程的数量。

Python实现简单多线程任务队列(python简单gui)

我们把 task, args, kwargs 以元组的形式存储在队列中。*args 可以传递数量不等的参数,**kwargs 可以传递命名参数。

我们为每个 worker 创建一个线程,然后在后台删除。

下面是 worker 函数的代码:

worker 函数获取队列顶端的任务,并根据输入参数运行,除此之外,没有其他的功能。下面是队列的代码:

我们可以通过下面的代码测试:

Blokkah 是我们要做的任务名称。队列已经缓存在内存中,并且没有执行很多任务。下面的步骤是把主队列当做单独的进程来运行,这样主程序退出以及执行数据库持久化时,队列任务不会停止运行。但是这个例子很好地展示了如何从一个很简单的小任务写成像工作队列这样复杂的程序。

修改之后,我的梯度下降算法工作效率似乎更高了。如果你很感兴趣的话,可以参考下面的代码。

python的else子句使用指南 在日常coding中,分支语句的使用非常普遍,经常会根据是否满足一定的条件对代码执行的逻辑进行一些控制,所以大家对if[elif[else]]一定不会陌生。分支

python结合shell查询google关键词排名的实现代码 最近老婆大人的公司给老婆大人安排了一个根据关键词查询google网站排名的差事。老婆大人的公司是做seo的,查询的关键词及网站特别的多,看着老婆

用python写的一个wordpress的采集程序 在学习python的过程中,经过不断的尝试及努力,终于完成了第一个像样的python程序,虽然还有很多需要优化的地方,但是目前基本上实现了我所要求的

标签: python简单gui

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

上一篇:如何在Python中编写并发程序(python编写代码的步骤)

下一篇:python的else子句使用指南(python中else语句)

  • 加计扣除企业所得税季报申报
  • 金融利息是什么意思
  • 货币资金项目应根据账户的期末余额合计填列
  • 行政单位待处理财产损益要结转吗
  • 对方把发票丢了可以重开吗
  • 用现金暂付职工差旅费3000元
  • 出售闲置材料账务怎么做
  • 进项税额转出转多了
  • 小规模代扣代缴个税会计分录
  • 增值税一般纳税人税率
  • 自然人出租房屋增值税税率
  • 车船税交给谁了
  • 小规模纳税人增值税征收率为
  • 企业所得税三项费用扣除
  • 定期存款计入什么科目
  • 进项票税率不同怎么处理
  • 未分配利润为什么不分配
  • 公司产品因质量问题买家追究
  • 营业范围是销售范围吗
  • 去年的发票今年可以抵扣吗
  • 上年度第四季度总结
  • 收到租金税费怎么计算
  • 承兑找零怎么做凭证
  • 如何调整任务栏图标大小
  • mac os常用快捷键
  • bios怎么关
  • php字符串的三种定义方式
  • 小规模纳税人没有进项税
  • 纳税人逾期申报
  • php常用的魔术方法有哪些
  • 企业财务管理内部控制问题与应对策略
  • 辅导期纳税人注意事项
  • 利润表项目本期怎么算
  • 如何设置长期有效的群二维码安卓手机
  • 减值准备递延所得税资产
  • 工程材料费发票没拿到是否能预提费用
  • 借款合同印花税怎么做账
  • 安装exclipse
  • 瀑布流实现方式
  • 公允价值变动损益会计处理
  • 材料暂估入库如何进行账务处理
  • python中assert()函数
  • python中如何创建字典
  • mongodb启动
  • 国有土地租赁合同的性质
  • 承兑汇票私人贴息双方都违法吗
  • sql server中的编程语言
  • 预付款已经开了发票要怎么做账
  • 企业所得税季度申报表营业收入怎么填写
  • 总账与总账之间的核对
  • 客户送我东西怎么办
  • 工会经费怎么计提及使用
  • 购买车辆的进项税怎么勾选
  • 高新企业账目有什么不同
  • 固定资产的运输费和包装费计入
  • 销售收入分成率公式
  • 以现金形式发工资违法吗
  • 房地产销售折让怎么开票
  • 其他贷款服务计入什么科目
  • mysql读写分离实现原理
  • centos7.5设置静态ip
  • windows右下角
  • windows sky high
  • 怎么把喜欢的图片设置成电脑壁纸
  • jquery获取本地ip
  • 在unity中单例的主要作用
  • 纹理烫男
  • sku分析的作用
  • 学javascript可以干什么工作
  • python编程
  • unity3d总结
  • linux bash脚本
  • linux shell实战
  • web docs
  • 轻松实现js图片识别
  • 个人所得税父母双方专项扣除
  • 潍坊昌邑售房信息
  • 房地产开发企业土地成交额与去年同期相比增长约
  • 增值税留抵退税政策
  • 申报土地增值税需要什么资料
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设