[发明专利]协同编辑中数据冲突模块的加锁方法有效
申请号: | 200710051008.0 | 申请日: | 2007-12-27 |
公开(公告)号: | CN101196829A | 公开(公告)日: | 2008-06-11 |
发明(设计)人: | 陈雷霆;何明耘;蔡洪斌;邱航;房春兰 | 申请(专利权)人: | 电子科技大学 |
主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F17/24 |
代理公司: | 成都九鼎天元知识产权代理有限公司 | 代理人: | 熊晓果;吴彦峰 |
地址: | 611731四川省成都*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种协同编辑中数据冲突模块的加锁方法,每个协作者对自己编辑位置范围的锁定都要得到自己所在组的主编节点的认可,每个协作者有且仅有一把锁,在锁定范围内可任意进行各种编辑操作;在每个节点都保存了一份组内成员的锁表,当本地加锁操作发生时,首先扫描本地的锁表,看有没有冲突,如果有,则首先要通过优先级的判断,之后,加锁的判断结果被发送到主编节点,由主编节点进行仲裁;本发明提出了人性化加锁方法,不仅可以提高协同编辑的效率,而且可以灵活的处理冲突;该加锁方法易于实现,解决了原始技术方案的弊病,具有良好的可扩展性;并且提供了一种有弹性的数据冲突解决方案,能够满足多人分布式协同编辑的协同需求。 | ||
搜索关键词: | 协同 编辑 数据 冲突 模块 加锁 方法 | ||
【主权项】:
1.一种协同编辑中数据冲突模块的加锁方法,其特征在于:每个协作者对自己编辑位置范围的锁定都要得到自己所在组的主编节点的认可,每个协作者有且仅有一把锁,在锁定范围内可任意进行各种编辑操作;在每个节点都保存了一份组内成员的锁表,当本地加锁操作发生时,首先扫描本地的锁表,看有没有与别人的锁有冲突,如果有,则首先要通过优先级的判断,来确定该资源应该由那方使用,判断的结果有:(1)、维持原始的加锁;这种情况下,请求加锁的操作不能进行;(2)、抢夺原来的加锁;但是这个请求必须通过服务器的允许;(3)、提示用户仲裁;这种情况发生在优先级相同的两个加锁冲突时,如果用户不愿意仲裁中断任务的进行,可以关闭仲裁而使用默认的乐观锁回滚方法;之后,加锁的判断结果被发送到主编节点,主编节点判断:(a)、是否有别的节点与该节点申请的锁位置范围冲突;如果没有,它将发回同意的消息,申请锁的节点原来的编辑操作生效;(b)、如果有冲突,则主编节点需要按照上述的优先级方式判断协作者的资源分配请求是不是有效,有效的话,也发回同意,并且修改主编节点维护的锁表,通知各协作节点无条件接受该锁表;无效的话则拒绝该加锁判断,申请的节点也要无条件接受;(c)、如果同时有多个关于加锁的判断,则主编节点要根据各节点的时间戳验证请求是不是超时,非超时请求根据优先级排队,并使用上述的加锁方式对所有节点的请求进行判断,之后主编节点根据判断结果,拟定自身的锁表,判断哪些节点需要回滚,哪些同意加锁,判断结束后,将锁表发回给所有节点,协编节点无条件接受;收到主编节点发回的否定请求加锁信息的节点,按本地的取消操作集取消预先编辑操作,每个用户节点释放锁时,必须将释放锁的信息发给主编节点,主编节点释放该锁并将锁释放信息发给组内所有节点,每个节点收到该信息后更新自身的锁表,如果加锁的位置范围没有与本地的锁表冲突,那么本地的编辑操作仍继续进行,不必要等待远程主编的应答到来再操作。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于电子科技大学,未经电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/200710051008.0/,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置