pygame.event.get() 未在執行緒中傳回事件
為了最佳化使用者輸入處理,使用者實作了執行緒與遊戲的主循環分開處理輸入事件。然而,在線程中使用 pygame.event.get() 時會出現問題,因為它沒有傳回任何事件。
解釋在於 pygame 使用的執行緒模型。根據其文檔,事件子系統必須從主線程存取。這意味著雖然可以從其他線程發布事件,但事件佇列本身必須在主線程中處理。
因此,要解決此問題,不能在外部呼叫 pygame.event.get()主執行緒。相反,應該使用以下方法之一:
以上是為什麼 pygame.event.get() 不在單獨的線程中返回事件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!