gpt4 book ai didi

python - 启动 Twisted Reactor 时的 CPU 使用率

转载 作者:太空宇宙 更新时间:2023-11-04 05:53:48 25 4
gpt4 key购买 nike

我正在监控包含以下代码的 python 脚本的 CPU 使用情况

from twisted.internet import reactor, task
def fun():
print "I don't know why CPU usage increases in the beginning"
lc = task.LoopingCall(fun)
lc.start(10)
reactor.run()

我正在使用 ps 命令获取 CPU 使用率(百分比)

ps aux|grep <script_name>|grep -v grep|awk '{print $3}'

条件是它不应该使用大于 5% 的 CPU。但是一旦我执行脚本,CPU 使用率就会达到 16% 到 20%。之后,在 3 或 4 秒内下降到 1% 或 2%。我的问题是,为什么 CPU 使用率一开始会增加到 16% 到 20%?我观察到当 reactor 开始运行时,CPU 使用率会增加一段时间。之后,在我的案例中它几乎不使用 CPU(0.3% 到 0.4%)。

最佳答案

启动 Python 解释器,将 Twisted 的所有字节码读入内存,并设置与启动 Python 进程相关的代码数据结构需要一点时间。

对我来说,这个数字接近 3% 而不是 20%,但是运行你的脚本我确实看到了一个可观察到的 CPU 信号。 (我不确定您使用的是哪种计算机,也许它的性能非常低。)

不过,启动 react 堆本身并不是很昂贵。您可以通过将程序修改为在导入后但在启动 react 器之前暂停来看到这一点,如下所示:

from twisted.internet import reactor, task
def fun():
print("I don't know why CPU usage increases in the beginning")
lc = task.LoopingCall(fun)
raw_input("Hit Enter To Start The Reactor:")
lc.start(10)
reactor.run()

如果您的机器与我的机器相似,您应该会在按下 Enter 之前看到一个光点,但如果您继续观察它,您应该什么也看不到。

关于python - 启动 Twisted Reactor 时的 CPU 使用率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28833422/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com