如何在 C# 中同步冗长的进程

本文关键字:进程 同步 | 更新日期: 2023-09-27 18:33:44

我不确定我应该如何放置我的问题的标题,但我在基于窗口的应用程序 C# 代码中有一个问题。

基本上我正在用 C# 创建 2 个 WPF 应用程序

  1. 对于我的第一个应用程序,请按照以下步骤操作

    一个。我正在通过 C# 代码创建一些文件夹并在文本框上显示状态。

    二.然后我通过 C# 代码解压缩文件夹并将文件复制到 C 驱动器中的新文件夹位置。这次我还必须在文本框中显示状态。

但是第二步有问题。复制文件阻止了在文本框中显示状态的第一步。我希望它应该首先在文本框中显示第一步的状态,然后它应该启动应对文件。现在,在处理文件后,它会在文本框中显示完整的消息。:(

  1. 对于我的第二个应用程序,我在列表中加载了包含 3000 多个数据的 XML。因此,加载和显示列表中的项目,阻止整个应用程序。那么我该如何解决这个问题呢?

我是 .net 的新手,所以请帮助我。

如何在 C# 中同步冗长的进程

您需要使用线程或后台工作线程来完成此任务。当您在单个应用程序中执行某些工作时,您的 UI 将被阻止,直到完成一些长任务 [在您的情况下更新您的文本框]。

此外,要访问不在您自己的线程 [原始线程] 中的 UI 组件,您将需要调用。浏览指南并尝试调整其中的技术。根据我的经验,"后台工作者"很容易使用。

指南-

Backgorund workers

调用

更新 UI - 在您的情况下显示进度