赞
踩
信号量(Semaphore)是一种实现任务间通信的机制,可以实现任务间同步或共享资源的互斥访问。
一个信号量的数据结构中,通常有一个计数值,用于对有效资源数的计数,表示剩下的可被使用的共享资源数,其值的含义分两种情况:
以同步为目的的信号量和以互斥为目的的信号量在使用上有如下不同:
信号量允许多个任务在同一时刻访问共享资源,但会限制同一时刻访问此资源的最大任务数目。当访问资源的任务数达到该资源允许的最大数量时,会阻塞其他试图获取该资源的任务,直到有任务释放该信号量。
功能类别 | 接口函数 | 描述 |
---|---|---|
创建/删除信号量 | LOS_SemCreate | 创建信号量,返回信号量ID |
LOS_BinarySemCreate | 创建二值信号量,其计数值最大为1 | |
LOS_SemDelete | 删除指定的信号量 | |
申请/释放信号量 | LOS_SemPend | 申请指定的信号量,并设置超时时间 |
LOS_SemPost | 释放指定的信号量 | |
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。