Могу ли я опрашивать события с использованием SDL2 в macOS вне основного потока?

#c #c #macos #sdl-2

#c #c #macos #sdl-2

Вопрос:

Я играю с SLD2, и у меня есть несколько работающая игра. Он отлично работает в Linux / Windows, но я получаю исключение в macOS.

Я выполнил обработку ввода в отдельном потоке, в основном он просто опрашивает вводимые пользователем данные, а затем выполняет вычисления / перемещает спрайты и т. Д. Моя проблема в том, что в macOS кажется, что библиотека компилируется таким образом, что при вызове SDL_PollEvent SDL_WaitEvent или SDL_HasEvents она вызывает SDL_PumpEvents изнутри себя, что может быть вызвано только из основного потока.

Есть ли способ получить события без вызова функций SDL_PumpEvents ? (Я вызываю это в основном потоке на каждой итерации, так что это действительно не нужно)

Комментарии:

1. Проверьте wiki. libsdl.org/SDL_PeepEvents