sdl封装了很多系统操作。

1.延时处理函数:

void SDL_Delay(uint32 ms);//以微秒为单位,最小的数值根据操作系统的不同而不同


2.取系统运行事件:

Uint32 SDL_GetTicks(void);//返回微秒数


3.线程

使用SDL_Thread数据结构。使用接近于POSIX Thread接口。

使用SDL_CreateThread()创建线程

使用SDL_KillThread()杀掉线程//SDL2.0中没有这个函数

使用SDL_WaitThread()等待一个线程的退出。

void SDL_WaitThread(SDL_Thread* thread, int* status);



4.判断系统的字节序:

#include "SDL_endian.h"

定义在宏SDL_BYTEORDER上

如果等于SDL_LIL_ENDIAN是小字节序

如果等于SDL_BIG_ENDIAN是大字节序


5.互斥锁SDL_mutex

原型类似于pthread_mutex,用于加锁,是由信号量实现的。

SDL_CreateMutex()创建锁

SDL_LockMutex()加锁

SDL_UnlockMutex()解锁

SDL_DestroyMutex(SDL_mutex* mutex)销毁互斥锁


6.条件变量SDL_cond

作用:用于事件同步

SDL_cond* SDL_CreateCond(void);创建条件变量
void SDL_DestroyCond(SDL_cond* cond);关闭条件变量

int SDL_CondSingal(SDL_cond* cond);通知条件成立

int SDLCALL SDL_CondWait(SDL_cond* cond, SDL_mutex *mut);


7.定时器

int SDLCALL SDL_SetTimer(Uint32 interval, SDL_TimerCallback callback);


























GitHub 加速计划 / sd / SDL
8.9 K
1.68 K
下载
Simple Directmedia Layer
最近提交(Master分支:3 个月前 )
a57c5669 - 3 个月前
20a6193e - 3 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐