什么是 SAP ABAP 系统中的 Optimistic Locks
时间:2023-08-13 12:09:49 来源:个人图书馆-汪子熙
在业务应用程序中,虽然很多订单数据以更改模式(change mode)显示,但该数据被更改的可能性并不高。
如果不同用户同时访问数据,则锁定过程必须保证数据更改的一致性。
SAP 引入了锁概念(“enqueue”),用于 ABAP 程序中的锁定。当数据更改的可能性很高时,使用 pessimistic locking(悲观锁)有效。
(资料图)
但考虑到在任何给定的时间点,数据只能在多个并行对话框之一中显示为可更改状态。
在这种情况下,引入除了 pessimistic locking 之外的另一种锁机制就显得有必要了。
Optimistic Locks(乐观锁) 允许在所有并行对话框中将界面切换成可编辑状态。
然而,业务应用程序必须意识到,在用户自己的更改生效之前,最初显示的数据可能已经发生了更改。
锁定过程必须能够检测到这种情况,以便业务应用程序有可能采取冲突解决策略。
除了锁模式 S、E 和 X 之外,还存在乐观锁的锁模式 O。
如果用户以更改模式显示数据,则设置 Optimistic Locks(模式 O)。
同一对象上的乐观锁不会发生冲突。
如果用户想要保存(更改的)数据,则必须将乐观锁转换为排它锁(模式E)。
该转换是使用锁定模式R
实现的。如果有人之前在对象上设置了非乐观锁
,或者另一个 O 锁已被提升,则转换会失败。
如果升级成功,则删除该对象上的其他乐观锁,并且该锁表现为 E 锁。
乐观锁与其他锁的区别在于,竞争的乐观锁首先是相互兼容的,并不相互排斥。 如果发生锁冲突,则稍后才会验证。 对于锁所有者来说,锁冲突表现为锁的外部更改(当前锁用户可注意到),从而使乐观锁失效。
标签:
最新文章推荐
- 什么是 SAP ABAP 系统中的 Optimistic Locks
- 风暴过后,谁将站到舞台中央?
- 外资稳中提质 促进经济高质量发展
- 华为声明:相关公司不对外经营房地产业务
- 男童溺水 护士邻居紧急施救成功
- 小美女图画 小美女化妆
- 第二十届西北五省(区)“花儿”演唱会青海开幕
- 苍梧县有什么特产(梧州苍梧县十大特产)
- vivox27内屏价格(vivox27内屏修多少钱)
- 中国商飞纪委书记赵九方突发心脏疾病逝世,享年59岁
X 关闭
资讯中心

2022-08-06

2022-07-08

2022-05-20
2021-10-18
X 关闭