为帮助考生备考软考软件设计师考试,希赛小编为大家整理了2022下半年软件设计师知识点:并发控制,相信对大家备考会有帮助。
并发控制(★★)
【考法分析】
本知识点的考查形式主要是给出一些情景判断出现的并发问题,或给出一些关于事务、锁等概念的描述,判断正误。
【要点分析】
1、事务特性(ACID):
(1)原子性:事务是原子的,要么都做,要么都不做。
(2)一致性:事务执行的结果必须保证数据库从一个一致性状态变到另一个一致性的状态。因此,当数据库只包含成功事务提交的结果时,称数据库处于一致性状态。
(3)隔离性:事务相互隔离,当多个事务并发执行时,任一事务的更新操作直到其成功提交的整个过程,对其他事务都是不可见的。
(4)持续性:一旦事务成功提交,即使数据库崩溃,其对数据库的更新操作也将一直有效。
2、并发产生的问题:
3、封锁协议:
(1)共享锁(S锁):若事务T对数据对象A添加了S锁,则只允许T读取A,但不能修改A。并且其他事务只能对A加S锁,不能加X锁。
(2)排他锁(X锁):若事务T对数据对象A添加了X锁,则只允许T读取和修改A,其他事务不能再对A加任何锁。
【备考点拨】
1、掌握事务特性的概念。
2、能够区分并发产生的问题。
3、了解封锁协议的加锁原则和两种锁的特性。