首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >数据虚拟化与用户并发

数据虚拟化与用户并发
EN

Stack Overflow用户
提问于 2013-04-27 21:19:24
回答 1查看 177关注 0票数 0

是否有人有关于如何解决在多用户场景中使用数据虚拟化时可能出现的许多问题的指针/示例?让我们说,我们正在谈论WPF和DataGrid。实现按需加载的虚拟化集合并不太困难。但是,如果没有存储原始查询的临时结果的暂存区域,则会遇到以下并发问题:

  1. 加载新页面可能会获取不正确的数据(并发用户添加和删除一些记录,导致记录的总数相同,但会导致页面获取已显示在网格上方的重复条目)。
  2. 当滚动和加载新页面时,保留用户选择在网格中,其中可能有一种可能性,一旦选定的项目已从缓存过期,一旦重新加载,我们发现有人删除了它们。我们可以取消选择所有内容并向用户显示消息,但是:/此外,如果选择使用Shift-单击(multiselect)在靠近列表末尾的某个地方进行选择,那么在加载一些中间页(并发用户添加项)时,当某些项“出现”在列表中间时,应该做些什么。
EN

回答 1

Stack Overflow用户

发布于 2013-07-08 08:50:41

记住,用户屏幕上的任何内容在技术上都是最新的,这一点很有用。当您显示它在主数据集中滞后的时候。

1)是的,当然。但是,您可以随时跟踪在网格上显示的第一条记录,并从那里获取下一页大小集。那些被删除的当然会从视野中消失。或者,您可以尝试使用库(如ZeroMQ或RabbitMQ )和广播数据集更改,并在当前显示数据集的情况下实时更新数据集。显然,它仍然不会完全同步,但是您将减少它们不同步的窗口。

2)当您选择项目时,您会跟踪它们的主键。我不知道你想对那些已经从主集合中删除的人做什么。但你总能扮演其他人的角色,对吧?即使它们不再显示,您也可以跟踪PK,并在加载页面时重新选择它们。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16256967

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档