一种基于分组的协同编辑并发加锁方法技术

技术编号:19824899 阅读:30 留言:0更新日期:2018-12-19 15:49
本发明专利技术涉及一种基于分组的协同编辑并发加锁方法,属于计算机科学中的协同编辑领域。本发明专利技术致力于解决多用户N组协同编辑中存在的组间互斥与组内协同的问题,在尽量保证各组编辑时的独立性与完整性的前提下减少冲突等待时间,提升系统效率。本发明专利技术提出了用户优先系数与协作指数的计算方法以及四种并发加锁策略,在用户加入系统发起编辑活动时,首先判断其所在分组,若无分组则建立新组,已有分组则加入其所在组,之后处理其申请加锁区域。在发生冲突时,对与同组成员冲突和与其他组成员冲突采用不同的解决方法,以强化组内的合作性,提高协同编辑系统的并发性,本发明专利技术广泛适用于协同处理图形文档等在二维协同空间中进行协同编辑的应用场景。

【技术实现步骤摘要】
一种基于分组的协同编辑并发加锁方法
本专利技术涉及一种基于分组的协同编辑并发加锁方法,具体涉及多用户N组协同编辑中并发控制方法,属于计算机科学中的协同编辑领域。
技术介绍
随着信息与计算机技术的发展,人们的生活、工作方式越来越呈现出群体性、交互性、分布性和协作性的特点。实时协同编辑系统正是以其为背景诞生的新兴研究领域,是计算机支持协同工作中重要的应用方向[1-3]。对协同编辑系统的研究大多以单个用户为基本单位,而在现实生活中,存在很多多个用户组成一组,组内与组间都存在协同编辑的情况,在这种情况下多组用户同时发出协同需求,每组用户有着类似的协同任务,通常每组成员有一个共同的目标,或是它们之间存在某种联系与交互。协同编辑中广泛采用加锁的方法进行并发控制。加锁的基本思想是修改对共享对象的访问权限,以保证在同一时间该对象只有唯一的访问者。Abdelwahab等人在[4]中提出了floor算法,用户只有在获得访问令牌后才能进行编辑活动,否则将在等待队列中进行等待。floor机制本身的缺陷在于它更适用于单用户就能满足协同需要的场合,不适合多用户实时无约束的协作编辑。Sun在[4]中提出了可选锁机本文档来自技高网...

【技术保护点】
1.一种基于分组的协同编辑并发加锁方法,其特征包括如下步骤:步骤一、首先将协同操作空间抽象为一个二维共享空间,将编辑对象对应于二维平面上的点,在此平面上资源位置固定,对资源的操作仅存在更新,不存在插入、删除;在有用户开始进行协同编辑时,初始化用户的工作区域,每位用户的工作区域用一个五元组表示;步骤二、用户采用乐观加锁的方式对协同编辑区域进行加锁,系统分析用户所在分组情况,计算用户优先系数与协作指数,根据用户申请加锁区域与其他用户编辑区域的冲突情况选择并发处理方式。步骤三、实施具体的并发加锁方法,组间冲突采用组间区域占有方法和组间区域抢占方法解决;组内冲突采用组内区域转让方法和组内区域抢占方法解...

【技术特征摘要】
1.一种基于分组的协同编辑并发加锁方法,其特征包括如下步骤:步骤一、首先将协同操作空间抽象为一个二维共享空间,将编辑对象对应于二维平面上的点,在此平面上资源位置固定,对资源的操作仅存在更新,不存在插入、删除;在有用户开始进行协同编辑时,初始化用户的工作区域,每位用户的工作区域用一个五元组表示;步骤二、用户采用乐观加锁的方式对协同编辑区域进行加锁,系统分析用户所在分组情况,计算用户优先系数与协作指数,根据用户申请加锁区域与其他用户编辑区域的冲突情况选择并发处理方式。步骤三、实施具体的并发加锁方法,组间冲突采用组间区域占有方法和组间区域抢占方法解决;组内冲突采用组内区域转让方法和组内区域抢占方法解决。2.如权利要求1所述的一种基于分组的协同编辑并发加锁方法,其特征在于,在确定每位用户的工作区域时,还包括:表示该工作区域的五元组中的变量分别表示每位用户申请加锁的区域、用户实际获得的编辑区域、已被其他用户占有导致申请加锁失败,用户仍希望获得选择等待的区域、其他用户在等待的该用户所拥有的区域、用户在自己工作区域内已编辑完毕的区域。3.如权利要求1所述的一种基于分组的协同编辑并发加锁方法,其特征在于,在计算优先系数和协作指数时,还包括:优先系数与用户编辑区域被抢占的概率有关,该系数越高,该用户编辑区域被抢占的概率越小。优先系数的计算与四项因素有关,这四项因素记录在用户信息中,分别为该用户编辑时间Time、在该用户所编辑区域等待队列中的用户个数WNum、该用户锁定区域占整个区域的比例LockRRatio以及其所在组现有的成员数GNum。协作指数用于计算当组内有成员退出时,系统默认由哪位成员接受其未编辑的区域。协作指数与两项因素有关,分别为该组优先系数...

【专利技术属性】
技术研发人员:秦小麟王沁雪江国华郭帅邵路伊王宁
申请(专利权)人:南京航空航天大学
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1