gpt4 book ai didi

c# - 加载大量前期数据。 。同步或异步。

转载 作者:行者123 更新时间:2023-12-02 18:20:27 24 4
gpt4 key购买 nike

所以我有一个 winforms 应用程序,可以在启动时同步下载一组数据。这显然需要一段时间,但是当任何服务或 GUI 类加载时,它们都会有这些数据。我可以更改它以放置后台线程,但随后需要访问此数据的每个组件都必须在该数据准备好时不断收到通知。对于我的每个依赖于要加载的数据进行 If (Loaded) 检查或必须订阅已加载事件的类来说,这似乎都是糟糕的设计。 。 。有什么想法吗?

还有其他想法吗?

最佳答案

我编写了许多具有与您所描述的行为类似的应用程序,并为您提供了三个建议......

启动画面

向您的应用程序添加一个启动屏幕,显示多个启动步骤的状态。过去,当应用程序在用户开始使用该应用程序之前必须在启动时执行许多步骤时,我就使用过此方法 - 通过 Active Directory 确认身份和访问授权、联系数据库以获取系统信息、加载静态数据、与指定 Web 服务的初始联系、检查先决条件(如 Crystal 报表)是否已安装并正常运行等。

订阅

让每个组件向您的数据加载器注册兴趣,并在数据可用时收到通知。这是观察者模式,没有什么问题,尽管管理订阅可能有点困惑。

延迟加载

设计应用程序的其余部分以尽可能晚地请求数据,为后台加载提供尽可能广泛的机会来完成。启动后快速启动的用户必须等待必要的数据加载;慢慢来的用户(也许他们启动了应用程序,然后切换到 Outlook)发现响应是立即的。

关于c# - 加载大量前期数据。 。同步或异步。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/364687/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com