RK3588平台开发系列讲解(同步与互斥篇)自旋锁死锁实验-LMLPHP

📢自旋锁若是使用不当就会产生死锁,在本篇将会对自旋锁的特殊情况-死锁进行讲解。

一、自旋锁死锁


死锁是指两个或多个事物在同一资源上相互占用,并请求锁定对方的资源,从而导致恶性循环的现象。当多个进程因竞争资源而造成的一种僵局(互相等待),若无外力作用,这些进程都将无法向前推进,这种情况就是死锁。

自旋锁死锁发生存在两种情况:

  1. 第一种情况是拥有自旋锁的进程 A 在内核态阻塞了,内核调度 B 进程
06-08 06:43