嵌入式技术论坛
直播中

刘勇

7年用户 1331经验值
私信 关注
[问答]

RTThread中POSIX兼容层自旋锁如何实现呢?

RTThread中POSIX兼容层里自旋锁的加锁实现好像不太对。如代码所示:

int pthread_spin_lock (pthread_spinlock_t *lock)
{
if (!lock)
return EINVAL;
while (!(lock->lock))
{
lock->lock = 1;
}
return 0;
}

如果已经加锁(lock等于1),不是应该while死等吗?但是代码中应该是返回0了。

不知道是不是我理解有问题,请各位大侠指正,谢谢。

回帖(1)

李玲

2023-2-1 15:54:58
好像应该怼到spinlock上去的
举报

更多回帖

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