总目录链接:[RK3568 Android11] 本专栏说明和总目录
目录
前言
信号量(semaphore)是用于保护临界区的一种常用方法。只有得到信号量的进程才能执行临界区代码,而没有得到信号量的进程会进入休眠等待;
一、了解信号量
1、信号量定义
信号量又称为信号灯(semaphore),本质上是一种睡眠锁。信号量是可以指定多个进程进入临界区,但如果有一个任务试图获得一个不可用(已经被占用)的信号量时,信号量会将其推进一个等待队列,然后让其睡眠,CPU处理器能重获自由,从而去执行其他代码。当持有的信号量可用时(被释放后),处于等待队列中的那个任务将被唤醒