【发布时间】:2014-03-31 15:20:36
【问题描述】:
我使用 pygame 编写了一个小脚本(实际上不是视频游戏,而是模拟结果的图形显示,如果这很重要),但我对它等待用户事件的方式并不满意(在我的情况下,我是只对键盘上的几个键感兴趣)。
它使用:
running = True
while running:
for event in pygame.event.get():
#tests and hypothetical actions
即使用户不执行任何操作,此循环也会使 CPU 内核饱和,这意味着对 CPU 的无用压力、热量、风扇噪音,甚至可能会出现延迟。有没有更聪明的,即。更经济的方式,将程序置于事件等待模式而不使用无限循环,但仍使用 pygame。
【问题讨论】:
-
我怀疑任何人在个人层面上所做的任何事情都会饱和 CPU 内核。
-
@sshashank124:我所说的 saturate 是指使用它@ 100% ,我只是仔细检查了一下,确实如此。
-
我认为最接近的方法是添加
timer.tick()方法来控制最大 FPS。除此之外,我不知道有什么办法。