我正在使用 C# 开发一个用于 pdf 文件管理的桌面应用程序。
当我在任何文件夹中搜索 *.pdf 时,应用程序会停止响应一段时间,这是不良行为。
我正在使用 XmlWriter
写入数据(即文件名、作者姓名、主题)。我还有一个标签来显示当前的文件扫描,但它只显示扫描完成后的最后一个文件。
最佳答案
这是一个经典问题。
基本上,显示应用程序的线程是执行所有工作的线程。因此,GUI 的任何更新/响应都必须等到完成。
解决这个问题的方法是使其成为多线程。最简单的方法是使用后台工作线程,它将执行写入搜索等操作,并让主线程保持空闲。
关于c# - 如何扫描文件并显示当前扫描的详细信息而不使应用程序无响应?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9768961/