ARM技术论坛
直播中

李桂英

8年用户 1454经验值
私信 关注
[问答]

新手请教信号量的概念问题

请教信号量的概念问题. 我准备用信号量来编写一个ARM程序,但我没有完全理解信号量的概念.
例如:现在有 4 个任务:TASK1,TASK2,TASK3 和 TASK4,任务的要求是:TASK1 和 TASK2
之间需有信号量传递信息;TASK3 和 TASK4 之间需也有信号量传递信息.
假定 TASK1 和 TASK2 之中已建立了一个信号量为
RandomSem = OSSEMCreate(1);
我要问的问题是:TASK3 和 TASK4 之中的信号量是否需重新建立一个 例如,加一条
RandomSem1 = OSSemCreate(1);
换一个问法:即若 TASK1 和 TASK2 之间需有信号量传递信息;
TASK3 和 TASK4 之间需也有信号量传递信息,我只需在运行这 4 个任务之前的初始化程
序中有一条指令即可:RandomSem = OSSemCreate(1);

回帖(3)

李玲

2023-2-27 11:15:29
用两个信号量,你第一个说法对了
举报

刘勇

2023-2-27 11:15:41
是在多线程环境下使用的一种设施,是可以用来保证两个或多个关键代码段不被并发调用。在进入一个关键代码段之前,线程必须获取一个信号量;一旦该关键代码段完成了,那么该线程必须释放信号量。
举报

陈静

2023-2-27 11:15:50
同共享内存一样,系统中同样需要为信号量集定制一系列专有的操作函数。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分