SDL中的调度事件

Dispatch event in SDL

本文关键字:事件 调度 SDL      更新时间:2023-10-16

也许我刚刚在文档中猜到了一些东西,但我不知道如何从不同的程序线程为应用程序调度事件
我的伪代码:

void main() {
   SDL_init();
   createThread(&secondThread);
   while(!quit) {
     /*EVENT HANDLER*/
     SDL_Event event;
     SDL_WaitEvent(&event);
     switch(event.type) {
         /*manage events*/
     }
   }
   SDL_Quit();
}
void secondThread() {
   char output[255];
   readSocket(output);  //Blocking function
   if(output=="EXIT")
      SDL_dispatchEvent(SDL_QUIT);
   return 0;
}

听起来像是在寻找SDL_PushEvent()

它甚至被记录为线程安全的,当然,对于许多库来说,这不是一个通常可以假设的东西。