位置: 编程技术 - 正文

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语句)

  • 增值税专用发票可以开电子发票吗
  • 没有增值税专用发票开具证明
  • 计提印花税会计分录最新
  • 公司支付宝收款二维码怎么弄
  • 现金销售收入是净收入吗
  • 哪些发票能做公章
  • 收到就业补贴财务如何做账
  • 什么情况下增值税进项税额要转出
  • 境外付款境内支付什么意思
  • 典当业销售的死当物品是否交增值税
  • 税局代开的法律顾问费能否抵扣
  • 主营业务税金及附加包括印花税吗
  • 债权债务转让税务问题
  • 2020年小规模生活服务业优惠政策
  • 子公司具有独立的法律地位吗
  • 职工福利费为什么是14%
  • 前期物业管理公司
  • 企业零星支出是否需要发票
  • 包装物报废收回残料
  • 处理固定资产怎么计算
  • 所得税费用什么时候结转
  • 房地产企业的样板房,装修款如何缴纳增值税
  • 受托加工物资的账务处理例题
  • 免征增值税的会计处理方法有哪些
  • 公司员工差旅费报销制度
  • 大白菜u盘启动后黑屏
  • 平安树的养殖方法和浇水时间
  • 临时 文件夹
  • php实现修改功能
  • 售后租回怎么理解
  • php ajax json
  • 位于Praprotno村之上的圣托马斯教堂 (© Guy Edwardes/Minden Pictures)
  • php扩展开发参考手册
  • 太原市插画工作室
  • 视图的定义和操作实验报告
  • 增值税发票填写注意事项
  • centos7配置自动获取ip
  • bert模型能做什么
  • springmvc常见问题
  • 无法报销的原因
  • 多交增值税可以抵扣吗
  • css content \f041
  • 小规模企业利息收入要交税吗
  • 开了银行对公账户要多久
  • python __call__
  • java实现打印
  • 出纳与会计现金的区别
  • 装修费用应该计入什么科目
  • 固定资产报废能否继续使用
  • 支付给职工以及为职工支付的现金增加说明什么
  • 车船使用税必须每年都交吗
  • 明细与发票
  • 客户罚款员工承担
  • 黄金以旧换新工具有哪些
  • 一般纳税人增值税税率
  • 小额零星物资
  • 一般纳税人拿到普票怎么处理账务
  • 一般纳税人厂房租赁增值税税率是多少
  • 企业预付账款怎么做账
  • win7传真和扫描
  • sar 命令
  • 方正笔记本
  • win7系统如何隐藏任务栏
  • 忘记mysql密码
  • Linux中QQ软件的安装和配置
  • mac图片格式怎么转换jpeg
  • pcn是什么软件
  • win8安全和维护在哪
  • win10系统经典桌面
  • http://www.2cto.com/kf/201402/280576.html
  • php和js的区别和联系
  • 使用筷子就餐会不会传染乙肝病毒
  • window.requestAnimationFrame是什么意思,怎么用
  • csx脚本
  • python调用fortran函数传入数组
  • Dojo Javascript 编程规范 规范自己的JavaScript书写
  • 饮料开专票几个点
  • 深圳税务局工作时间表
  • 陕西个体户免税政策
  • 手机微信怎么预约
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设