我在刷新Windows窗体应用程序中的数据时遇到问题。我有一个服务器(它也是另一个客户端)和一个客户端。我的任务是通过单击按钮来更新列表中的数据,并且服务器端客户端正在正确更新,但在客户端中它不是第一次更新。
但是通过保持特定点的调试点,它也在客户端更新。我知道这是因为Timing问题而发生的,所以我使用了Thread.Sleep();
但我仍面临着同样的问题
如果不改变任何代码,我无法理解为什么会这样。
答案 0 :(得分:1)
不要 - 永远使用Thread.Sleep();
这只是你尝试过的东西时所做的事情,但在生产中几乎没用。
话虽如此,您遇到了竞争条件,这通常很难调试,因为它们依赖于服务器 - 客户端通信。
我建议你看一下async-await,如果你还没有,你设置你的代码,等待(等待)服务器在更新你的UI之前给你更新。
如果您已经在使用async / await,我建议您向我们展示一些代码,以便我们至少可以帮助您。但是根据现有的信息,我建议你仔细研究一下,然后从那里学到一些东西。它会有很多帮助