阻塞形成原因

是由于SQL Server是高并发的,同一时间会有很多用户访问,为了保证数据一致性和数据安全,引入了锁的机制。同一时间只有拿到钥匙的用户能够访问,而其他用户需要等待。

死锁形成四大必要条件

1.一个资源每次只能被一个进程使用。

2.一个进程因请求资源而阻塞时,对已经获得的资源保持不放

3.进程已获得的资源,在未使用之前,不能强行剥夺

4.若干进程之间形成首尾相接的循环等待关系

如图:

如何捕捉死锁

1.Profiler

2. 扩展事件跟踪死锁