我不会提供代码,因为太长了。python脚本涉及在while循环中执行大量的命令。
基本结构
while True:
The meat goes here
with the odd if:
and stuff
现在我已经完成了,我注意到在运行它时,它使用100%的CPU,没有例外。我是个初学者,不知道该把这个问题归咎于什么。我想可能是因为脚本无限期地运行(直到我手动退出它),如果它每秒重复循环多次,可能只会使CPU负担过重。我增加了时间,睡眠(1)在时间的底部,看是否是没有改善的问题。
有人有什么想法吗?这是一个相当长的事件序列,但它们在很大程度上依赖于一个if语句,而该语句并不经常触发。100%的CPU使用率发生在特定的if语句被触发之前,所以我真的不知所措。
编辑:忘记包括它在unix环境中运行(Debian)
问题是为什么它应该而不是使用100%。这是你写任何东西的默认值。要使它不能100%地使用,您需要有特定的代码,这些代码会等待发生什么事情。如果你有,那么错误就在代码中。
100%的CPU意味着脚本运行良好。我看没什么问题。如果它阻止了其他程序的正常运行,请在较低优先级下运行脚本(nice)
除非有什么东西妨碍了CPU的使用(例如,等待磁盘IO或网络IO,或通过睡眠暂停执行),否则当程序运行时,CPU使用率将始终保持在100%左右。
如果你不想让它一直使用100%的CPU,如果它只是一遍又一遍地检查某个条件,那么你可能需要在循环中添加一个time.sleep(numberOfSeconds)。
相关问题 更多 >
编程相关推荐