C# 延迟数据缓存

C# 延迟数据缓存,c#,caching,timer,C#,Caching,Timer,我有数据缓存问题,不确定最佳解决方案 复选框中有一个客户机列表,可以通过一些变量进行筛选,从而创建不同的子组。 当用户选择检查客户端时,需要在后台缓存数据,这大约需要1/2秒。 但是,用户还可以“全选”,从而检查列表中所有可见的客户端。数据缓存可以在客户机列表上完成,然后大约需要8秒 所以我的问题是:当使用selectall*时,或者当用户以足够快的速度点击时,会出现巨大的性能下降,因为数据缓存是逐个客户端进行的,而不是作为一个组进行的 我需要将缓存事件延迟约1秒,以确保整个组立即进行缓存,但我

我有数据缓存问题,不确定最佳解决方案

复选框中有一个客户机列表,可以通过一些变量进行筛选,从而创建不同的子组。 当用户选择检查客户端时,需要在后台缓存数据,这大约需要1/2秒。 但是,用户还可以“全选”,从而检查列表中所有可见的客户端。数据缓存可以在客户机列表上完成,然后大约需要8秒

所以我的问题是:当使用selectall*时,或者当用户以足够快的速度点击时,会出现巨大的性能下降,因为数据缓存是逐个客户端进行的,而不是作为一个组进行的

我需要将缓存事件延迟约1秒,以确保整个组立即进行缓存,但我不确定最好的方式是什么。显而易见的解决方案是使用一个定时器,在选定每个客户端后重置,1秒后将缓存数据,但定时器的不断重置等感觉严重缺乏优雅。有没有更好的办法

GUI控件通过一个接一个地勾选所有事件来“选择全部”,并逐个关闭事件。
听起来您应该将这项工作推迟到实际需要数据时,而不是在需要数据之前抢先缓存数据。也就是说,我不会说你提出的方法不雅。这与您在键入搜索时遇到的自动完成等问题上看到的一般想法相同。谢谢John-我没有意识到。Servy-它的大部分在前端以一种或另一种方式显示,因此不幸的是,这不是一个可行的选择。