我正在编写一个队列处理应用程序,该应用程序使用线程等待并响应要发送到该应用程序的队列消息。对于应用程序的主要部分,只需要保持活动状态即可。对于类似下面的代码示例:
而True:
通过
要么
而True:
time.sleep(1)
哪一个对系统的影响最小?除了保持python应用运行之外,什么都不做的首选方式是什么?
我可以想象 time.sleep() 会减少系统开销。使用 pass
将导致循环立即重新评估并固定CPU,而使用time.sleep将允许执行被暂时挂起。
编辑 :只是为了证明这一点,如果您启动python解释器并运行此命令:
>>> while True:
... pass
...
您可以看到Python立即开始吞噬90-100%的CPU,而与:
>>> import time
>>> while True:
... time.sleep(1)
...
甚至几乎没有在活动监视器上注册(在此使用OS X,但每个平台都应该相同)。
问题内容: 在我们的Web应用程序中,用户可以进行需要大量数据库表进行更新的更改。所有内容的加载时间最长为30秒。我不希望用户在导航到另一个页面之前等待其完成。 我将长时间运行的代码放在自己的页面上(例如,“ updateinfo.aspx”),并尝试了一些解决方案,包括jQuery AJAX调用“ updateinfo.aspx”或加载调用“ updateinfo.aspx”的图像文件。在所有情
问题内容: 我是处理这么多数据(2000万行)的新手,而且我不知道我对查询持续时间的期望是什么: 没有现场索引。这段陈述花了25分钟。数据库设置为简单恢复。25分钟似乎太长了吗?该表有9列,其中小数据类型<50 varchar。 问题答案: 如果您在一个事务中更新了2000万行,那么您的时间完全由IO子系统决定:您拥有哪种驱动器,磁盘文件的布局等等。如果RAID 40中有40个心轴,其中有4个平衡
问题内容: 在 pipe 上使用2个 队列 在进程之间进行通信有什么优势(如果有)? 我正在计划使用python模块。 问题答案: 最大的好处是队列是进程和线程安全的。管道不是:如果两个不同的进程试图读取或写入pipe的同一端,则会发生不良情况。队列的抽象级别也比管道更高,这在您的特定情况下可能有优势,也可能没有优势。
问题内容: 是否可以获取旧的运行过程的开始时间?如果今天不是开始日期,似乎会报告日期(而不是时间),如果今年不是开始日期,则只会报告日期。旧工艺会永远失去精度吗? 问题答案: 您可以指定格式器并使用,例如以下命令: 上面的命令将输出所有进程,并带有格式化程序以获取PID,命令运行以及启动日期和时间。 示例(从Debian / Jessie命令行) 您可以阅读的联机帮助页或查看Opengroup的其
问题内容: 这是GUI编程中的新功能,我正在尝试为我的python解析器之一创建GUI。 我知道 : Tkinter是单线程的。屏幕更新在整个事件循环中每次旅行时发生。每当您使用长时间运行的命令时,都在阻止事件循环完成迭代,从而阻止了事件的处理,从而阻止了重绘。 我的程序调用了一个大函数,大约需要5分钟才能完全运行它。因此,我猜唯一的解决方案是针对长期运行的命令使用线程。但是,我长期运行的命令已经
本文向大家介绍python Jupyter运行时间实例过程解析,包括了python Jupyter运行时间实例过程解析的使用技巧和注意事项,需要的朋友参考一下 这篇文章主要介绍了python Jupyter运行时间实例过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1.Python time time()方法 以上实例输出结果为: Pyt