Pageoffice并发问题

Pageoffice并发问题记录
1.1 问题描述
1.1.1 第一步,同时打开pageoffice插件操作同一word文档
用户A和用户B在两台电脑上同时打开插件对同一个word文档进行编辑
用户A页面:
在这里插入图片描述
用户B相同页面:
在这里插入图片描述

1.1.2 修改不同内容
用户A修改内容,将选择题所有内容删除,编辑判断题内容
在这里插入图片描述

用户B修改内容,将判断题所有内容删除,编辑选择题内容
在这里插入图片描述
1.1.3 查看修改结果
重新打开文档,发现用户B修改内容未生效。
在这里插入图片描述
1.2 并发问题产生原因
pageoffice默认未控制并发问题,如果两台电脑同时打开同一个文件进行操作,则后面保存的人(上述A用户)将前面保存的人(上述B用户)的文件覆盖,导致只有一人的修改内容生效。
1.3 解决并发问题的方式
在WebOpen之前设置属性TimeSlice。例如设置PageOfficeCtrl1.setTimeSlice(4);那么登录用户对这个文档的编辑时间即为4分钟。用户必须在编辑时间结束之前,进行编辑、保存等操作,在编辑时间结束之后,用户已经编辑的未保存的内容将无法保存。
PageOfficeCtrl1.setTimeSlice(4);//对当前文档开启并发控制
TimeSlice只对当前WebOpen打开的文档有效,如果不赋值,就不进行并发控制。默认值是0,表示不进行并发控制。
1.4 并发控制失效
在某些情况下,并发控制代码也会失效,由下图可见,在我已经设置完TimeSlice属性为5分钟的情况下,A、B用户打开插件时右上角都有提示编辑时间,并未达到同一文件只允许一人编辑的目的。

这是因为,打开word的代码中
在这里插入图片描述
A用户是通过127.0.0.1的本机地址打开word文档,用户B是通过192.168.200.xxx的IP地址打开word文档,webOpen方法参数的不同导致Pageoffice判定两个用户打开的文件的不同,故而并发控制失效。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值