用途
信号量用途一提供一种对共享资源的互斥访问机制。
信号量的另一个用途是调度对共享资源的访问。
信号量初始值设置为1,就能实现互斥作用。信号量初始值大于1时调度对共享资源的访问。
创建
sem_t *mutex;
sem_init(&mutex, 0, 1); // 创建匿名信号量(iOS不允许创建匿名信号量)
// 创建有名信号量
// O_CREAT 表示没有就创建返回,有就打开返回
mutex = sem_open("sem_name", O_CREAT, 0644, 1);
使用
// 请求信号量
P(mutex);
TODO:共享资源的访问
// 释放信号量
V(mutex);
网友评论