我的Java Blog
简单地说,死锁的产生是由于两个或多个线程之前有循环相关性引起的。 如运行事务1的线程T1具有了table1上的排它锁,运行事务2的线程T2有table2的排它锁,并且之后T2需要获取table1的资源。但是T1已经具有了table1的排它锁,所以T2在等待。当T1在使用table1还没有释放的同时,也需要获取table2的资源,这时死锁就产生了,因为table2被T2上了排它锁。
Powered by: BlogJava Copyright © kevin.zhan