【发布时间】:2018-01-13 12:53:15
【问题描述】:
我正在阅读有关信号量的信息,here 我发现您无法直接访问(递增/递减)信号量。
信号量是一个整型变量,只能通过wait()和signal()两个操作来访问。
关于这个话题我有两个问题:
- 什么是信号量的类型。它是结构还是其他数据类型。
如果是结构,那么我的第二个问题是:
- 为什么我们不能使用
semaphore.some_value++访问信号量。
如果它是我在wikipedia 上找到的变量:
一个平凡的信号量是一个普通的变量 那为什么我们不能像
semaphore1++那样访问它呢?
我试图增加它并得到这个错误:
错误:递增的类型参数错误
为什么禁止用户访问,为什么我们必须使用函数来访问它? (虽然我同意,使用函数并不是一个坏习惯,但是为什么?)
【问题讨论】: