2008年(239)
分类: DB2/Informix
2008-06-17 23:25:58
一个事务在申请锁时,如果数据上存在不兼容的锁,事务就开始等待,直到不兼容锁被释放为止。有时候,这种锁等待时间可能很长。例如:正在等待的数据被另一个事务加锁,而发出这个事务的用户在离开工作台时,没有提交该事务。
然而,一个事务不能无限期地等待,因为该事务本身也可能拥有其他锁,它的长时间等待也会影响到其它事务对锁的使用。
锁超时是数据库系统的一种锁等待处理机制。在数据库系统中,可以设置事务等待锁的最长时间。一旦事务的锁等待时间达到该参数设置后,系统就终止事务的执行,回滚相关操作。这种锁的等待和超时机制,可以防止应用程序在异常情况下无限期地等待锁的释放。