| 对象 | 操作 | Linux API | Windows API |
|---|---|---|---|
| 线程 | 创建 | pthread_create() | CreateThread() |
| 退出 | pthread_exit() | ThreadExit() | |
| 等待 | pthread_join() | WaitForSingleObject() | |
| 互斥锁 | 创建 | pthread_mutex_init() | CreateMutex() |
| 销毁 | pthread_mutex_destroy() | CloseHandle() | |
| 加锁 | pthread_mutex_lock() | WaitForSingleObject() | |
| 解锁 | pthread_mutex_unlock() | ReleaseMutex() | |
| 事件 | 创建 | pthread_cond_init() | CreateEvent() |
| 锁毁 | pthread_cond_destroy() | CloseHandle() | |
| 触发 | pthread_cond_signal() | SetEvent() | |
| 广播 | pthread_cond_broadcast() | SetEvent() / ResetEvent() | |
| 等待 | pthread_cond_wait() / pthread_cond_timewait() |
SingleObjectAndWait() | |
| 信号量 | 创建 | sem_init() | CreateSemaphore() |
| 获取(P) | sem_wait() | WaitForSingleObject() | |
| 释放(V) | sem_post() | ReleaseSemaphore() | |
| 销毁 | sem_destroy() | CloseHandle() | |
| 临界区 | 创建 | —— | InitializeCriticalSection() |
| 加锁 | —— | EnterCriticalSection() | |
| 解锁 | —— | LeaveCriticalSection() | |
| 销毁 | —— | DeleteCriticalSection() | |
| 消息队列 | 创建 | msgget() | —— |
| 发送 | msgsnd() | —— | |
| 接收 | msgrcv() | —— | |
| 销毁 | msgctl() | —— |
