如何让多个用户同时编辑文本而不会丢失数据?

时间:2017-03-07 01:40:39

标签: multithreading web-services web concurrency thread-safety

假设我们有一个允许多个用户在文本字段中写入的Web应用程序。例如:让我们说我们有user1和user2同时使用该应用程序。

  1. 开头文本字段为空。
  2. User1写" Hello world"然后单击“发送”按钮。
  3. 之后,user1和user2都会看到" Hello world"在文本字段上。
  4. User2删除" world"字和写" galaxy"然后发送消息。
  5. 现在user1和user2都看到" Hello galaxy"。
  6. 依旧......
  7. 但有些情况下数据会丢失,主要是两个用户同时编辑文本字段时。我该怎么做才能解决这个问题?有办法吗?如果没有,做这样的事情的最佳方式是什么?谢谢你们!

2 个答案:

答案 0 :(得分:3)

我认为有几种方法可以发挥最佳作用:

解决这个问题的方法之一主要是限制两个人同时编辑同一段代码。一个人将被限制在他们正在工作的部分,另一个人将被限制在另一个部分。然后,一个人可以评论另一个代码的建议或他们应该改变的东西。但是,这确实使协作变得非常困难,而且很可能您很难提供反馈。但是,仍然可以进行一些良好的协作,并且您将能够在没有任何这些问题的情况下一起工作。此外,当协作网站上只有一个人时,可以进行完全访问。

此外,您可以将其设置为立即保存所有更改,然后很快将其丢弃。这样,如果快速连续地在同一段文本上记录两个更改,那么计算机可能会报告可能存在一些问题,并且两个用户可以对这些更改进行排序。

希望这有用!!

答案 1 :(得分:0)

每个用户都没有看到新更改的文字,直到他们没有refresh页面....

除非您将具有特定时间的页面设置为refresh