本文介绍了Linux内核-我可以在不同的功能中锁定和解锁Spinlock吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我是内核编程和带锁编程的新手.
I'm new to Kernel programming and programming with locks.
以不同的功能锁定和解锁自旋锁是否安全?我这样做是为了同步代码流.
Is it safe to lock and unlock a spinlock in different functions? I am doing this to synchronize the code flow.
此外,在__schedule()中使用自旋锁(锁定和解锁)是否安全?让调度程序等待获取锁是否安全?
Also, is it safe to use spinlock (lock & unlock) in __schedule()? Is it safe to keep the scheduler waiting to acquire a lock?
谢谢.
推荐答案
可以使用semaphore
或mutex
代替spinlock
.您应该在同一函数中使用spinlock
进行最少的操作.
Instead of spinlock
, you can use a semaphore
or a mutex
. You should use spinlock
in the same function for the littlest set of operations.
这篇关于Linux内核-我可以在不同的功能中锁定和解锁Spinlock吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!