@
fengjianxinghun 在进入睡眠之前自旋一会尝试去获取锁那是因为有时候锁短时间内就能获取到,不必要走 slowpath,多了上下文切换等资源损耗。
这就是我说的"除非你真的知道你在做什么"的场景。
spinlock 没有问题,有问题用错场景的人。这里不是解决 spinlock 的问题,这里解决的是 muted lock 在发生竞争时 overhead 过多的问题。
你没必要再拿这种打自己脸的例子来解释了,用户态锁场景下 99%都不应该用 spinlock,就是事实。
说什么你用了 mutex 就是用了 spinlock 简直是偷换概念,胡搅蛮缠。
重要的事情说三遍:
N.B. You most likely do _not_ want to use MicroSpinLock or any
* other kind of spinlock. Consider MicroLock instead.”
N.B. You most likely do _not_ want to use MicroSpinLock or any
* other kind of spinlock. Consider MicroLock instead.”
N.B. You most likely do _not_ want to use MicroSpinLock or any
* other kind of spinlock. Consider MicroLock instead.”