gpt4 book ai didi

python - 我可以从第二个线程添加 pygame 事件吗

转载 作者:太空宇宙 更新时间:2023-11-03 15:20:40 24 4
gpt4 key购买 nike

好吧,我在很多地方都读到过 pygame 事件处理必须在主线程中完成。我想这样做,但我的问题是,我可以从不同的线程向事件队列添加事件吗?

我想从不同的线程调用 pygame.event.post(myEvent) 并在主循环中处理事件。这可能吗?

编辑:澄清一下,我想为异步网络 i/o 运行一个单独的线程。当一条新消息到达时,线程会在事件队列中放置一个事件,以表示有事情要做。

最佳答案

是时候进行一些侦探工作了!

查看 event.cevent_post 的源代码指示 C 函数使用 SDL 调用 SDL_PushEvent,而不自行检查线程安全。但是,SDL_PushEvent 的文档说:

This function is thread safe, and can be called from other threads safely.

这样看来确实是线程安全的。

关于python - 我可以从第二个线程添加 pygame 事件吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15538287/

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