spinlock、mutex lock 应用场景

spinlock、mutex lock 应用场景


linux内核同步机制spinlock、mutex lock,分别用在什么场景

mutex lock 是睡眠锁,在等待锁时进程进入睡眠状态,在锁被释放后,内核唤醒等待的进程运行;
spinlock 是不睡眠,一直轮询等待;

使用spinlock,临界区资源运行在原子(中断)上下文,或者在进程上下文,不能睡眠;
使用mutex lock,临界区运行在进程上下文并可以睡眠;

简单来说就是:
spinlock 用在当前进程不可进入休眠状态(当前进程不可发生进程调度) 的场景;
mutex lock用在允许休眠(允许发生调度)的场景;

再简单的说:
spinlock:不允许进程进入休眠
mutex lock:允许进程进入休眠

written by wang_yangkai@163.com



posted @   王阳开  阅读(89)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示