关于vxworks的semaphore的问题
本帖最后由 yangfancs 于 2010-08-25 11:58:34 编辑 看书上说,对于Mutual Semaphore,占用Mutual Semaphore的task可以递归的,或者说连续的take同一个semphore(take后不give继续take)。
那么Binary Semaphore(创建时full)和Count Semaphore(创建时count为1),也有这样的特性吗?
另外,关于Count Semaphore下面的两种理解哪一种是正确的?初始化是3。
第一种
Semaphore call Count after call
semCCreat() 3
semGive() 4
semGive() 5
第二种
Semaphore call Count after call
semCCreat() 3
semGive() 3
semGive() 3
[解决办法]
同一任务可递归take同一互斥信号量,give时数量要匹配
二进制和计数器的不可以
第二种理解正确