微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

什么会导致 pygame.init() 执行 40 秒?

如何解决什么会导致 pygame.init() 执行 40 秒?

Pygame 昨晚运行良好,现在 pygame.init() 函数需要大约 40 秒才能完成,与之前的即时相比。

import pygame
import time
start = time.time()
pygame.init()
print(f"Runtime: {time.time() - start}")

控制台结果:

"C:\Program Files\python39\python.exe" "D:/Google Drive/CompSci/proj/Alien Invasion/test.py"
pygame 2.0.1 (SDL 2.0.14,Python 3.9.0)
Hello from the pygame community. https://www.pygame.org/contribute.html
Runtime: 40.15961766242981

通常运行时间应该是即时的...

我在 Windows Defender 中排除了所有相关文件夹: Windows Defender exlusions

解决方法

根据 this GitHub issue,故障排除步骤是单独执行所有 init,例如:

pygame.display.init()
pygame.mixer.pre_init(frequency=44100,size=-16,channels=2,buffersize=512,allowedchanges=pygame.AUDIO_ALLOW_ANY_CHANGE)
pygame.mixer.init()
pygame.joystick.init()

这将使您清楚哪个正在减慢速度。在 OP 的情况下,它是 joystick.init() 造成的缓慢,这是通过断开并重新连接键盘来解决的。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。