一个信号量,自旋锁的纠结
,比如一个进程用信号量加锁了一个数据,然后ISR去读,拿不到信号量,会导致ISR睡眠,那也就是说这个进程不能用信号量了 ?因为如果他信号量保护的数据ISR也有可能去访问 ?是这个意思吗,但是进程空间无法使用spin lock的啊 要节约用水,尽量和女友一起洗澡;哈哈 我支持你
我爱你! 关你什么事?
很有吸引力
signature..................................
仙府之缘 如果一个进程A拥有了一个信号量,而另一个进程B要拥有这个信号量时,则,进程B就进入休眠,直到进程A释放这个信号量,若信号量的引用计数大于零时,进程B就可以拥有这个信号量了。
自旋锁是不允许进程睡眠的,若一个进程可能会进入睡眠,则就不能用自旋锁。 他俩惟一的差别在于是否会睡觉,信号量会睡而自旋锁不会。所以,你看看自己的上下文,能睡就用能用信号量,不能睡不能用信号量。这个跟要保护的数据没关系。
页:
[1]