2010-09-08 29 views

回答

2

隐式锁通常由DBMS自动放置。大多数DBMS允许开发人员或应用程序发出被称为显式锁的锁。

0
  • 显式锁定: - 明确要求锁定记录或表。
  • 隐锁: - 锁定是隐含的,但没有取得
+0

更明确的解释是有用的。在这种情况下,“未获得”意味着什么? – Minix 2016-09-27 14:14:32

2

隐锁定

客观性/ DB将隐式获得相应的锁适用于您的需要在他们的应用点。读取对象的操作将获得读取锁定;修改对象的操作将获得写入锁定。因为它们是由应用程序所需的

显式锁定

隐锁定获取访问权限的资源。一般来说,Objectivity/DB的自动锁定提供了一定程度的联合数据库并发性,这对大多数应用程序来说已经足够了。

但是,某些应用程序可能需要预先保留对所有必需资源的访问权限。这样做的原因可能是在开始操作之前为必要的对象提供必需的访问权限,或者阻止其他会话修改对操作至关重要的对象。

需要预先访问所有必需对象的应用程序可以显式锁定对象。假设应用程序需要根据特定时间点上许多对象的状态来计算值。虽然应用程序无法同时检查所有必需的对象,但它可以通过冻结对象的状态并依次检查它们来达到相同的效果。显式锁定有效地冻结对象,因为只要锁定它们,其他会话都不能修改它们。

相关问题