现在 SDL_LockMutex 就等着拿锁干你交代的第二个工作了,就等你给锁了. \n");SDL_LockMutex(s_lock);// 阻塞,直到获取为止,1.等别人 SDL_UnlockMutex 2.等别人 SDL_CondWait (这种方式你到时候记得解锁了还要唤醒别人)// 干第二个工作...SDL_UnlockMutex(s_lock);// 解锁SDL_CondSignal(s_cond);...
intSDL_CondSignal(SDL_cond*cond); 参数cond是一个指向 SDL_cond 结构体的指针,表示要操作的条件变量。 调用该函数后,会选择唤醒等待在该条件变量上的一个线程(如果有多个线程在等待,则只会选择其中一个)。被唤醒的线程将会从SDL_CondWait()或者类似函数处继续执行。 需要注意的是,在使用此函数之前必须先初始...
int SDL_CondWait(SDL_cond *cond, SDL_mutex *mut);//等待条件变量 SDL_CondWait:释放传递进来的锁,然后当条件变量满足的时候,等待其他的线程调用SDL_CondSignal或者SDL_CondBroadcast 改变条件变量cond,然后重新获取锁,然后返回。在调用该函数之前必须先调用SDL_LockMutex获取 锁。当信号被触发的时候就返回0,错误...
51CTO博客已为您找到关于SDL_CondWaitTimeout的相关内容,包含IT学习相关文档代码介绍、相关教程视频课程,以及SDL_CondWaitTimeout问答内容。更多SDL_CondWaitTimeout相关解答可以来51CTO博客参与分享和学习,帮助广大IT技术人实现成长和进步。
SDL_mutex* data_lock; SDL_cond * cond; SDL_Thread* pthread1; SDL_Thread* pthread2; SDL_Event event; int SDLThread1(void *data) { int * pi = (int*)data; for (;;) { if ((*pi) > 99) { SDL_Event event; event.type = SDL_THREAD_FINISH; ...