【发布时间】:2011-09-10 17:10:45
【问题描述】:
我有一个非常简单的表单,上面有一个 TOpenDialog 和一个按钮。当我按下按钮时,它会在对话框中调用 Execute。如果我在调试器中观察,打开对话框的行为会产生 14 个线程,当我关闭对话框时它们也不会消失。
有人知道这是怎么回事吗?
【问题讨论】:
-
只有 14 个?感觉就像整个操作系统都在启动……就我个人而言,我一直不明白为什么要花这么长时间才能显示一个文件对话框。
-
还有 +1,因为你让我学到了新东西。这种显着的延迟仅在您通过调试器运行应用程序时出现。
-
我记得读过通用文件对话框最终会加载所有 shell 扩展名,因此那些 DLL 可能会在做什么,天知道。
-
@Luke:好的,这是有道理的。你还记得读过任何事后卸载它们的方法吗?
-
@Mason:我猜你根本不需要关心它们。毕竟,Microsoft 和 Embarcadero 都不傻……而且,正如我刚刚了解到的,可怕的延迟只会在您通过调试器运行程序时出现。您有什么特别的理由说明这对您来说是个问题吗?
标签: windows multithreading delphi topendialog