进程死锁

Posted 数据之魂

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了进程死锁相关的知识,希望对你有一定的参考价值。

锁的机制是为了防止数据不同步的问题,同时带来了死锁的问题。

死锁满足需要具备以下条件(引用):

  • 1、互斥使用,即当资源被一个线程使用(占有)时,别的线程不能使用

  • 2、不可抢占,资源请求者不能强制从资源占有者手中夺取资源,资源只能由资源占有者主动释放。

  • 3、请求和保持,即当资源请求者在请求其他的资源的同时保持对原有资源的占有。

  • 4、循环等待,即存在一个等待队列:P1占有P2的资源,P2占有P3的资源,P3占有P1的资源。这样就形成了一个等待环路。

  • 简言之,锁中有锁,里锁等外锁就变成死锁。



以上是关于进程死锁的主要内容,如果未能解决你的问题,请参考以下文章

调度与死锁2

如何查mysql死锁进程

如何杀死oracle死锁进程

关于死锁的一些概念

事务 ( 进程 ID 60) 与另一个进程被死锁在锁资源上,并且已被选作死锁牺牲品。请重新运行 该事务。

Java-死锁