【发布时间】:2011-01-24 07:16:33
【问题描述】:
我创建了一个执行一些图像处理的类库(称为 GNGEngine.dll)。这个 dll 包含一个函数 ProcessBitmap() 作为搜索特定模式的主要函数。我通过创建另一个表单应用程序并引用 dll 来测试引擎。我通过单击按钮调用 dll 的 ProcessBitmap() 方法。表单应用程序需要 8 秒来完全处理图像。
现在根据客户的要求,我创建了一个 exe(控制台应用程序)文件 GNGEngineRunner.exe,它以图像文件名作为参数。我已经创建了 dll 类的对象并调用了 ProcessBitmap() 方法并将文件传递给它进行处理。现在处理同一张图像几乎需要一分钟。
有什么具体原因,为什么花费了太多时间?
感谢您分享宝贵的时间。
【问题讨论】:
-
很难说没有更多细节。
-
分析您的两个应用程序,这个是免费的,eqatec.com/Profiler/Download.aspx 但您可以选择任何分析器。分析后,您可以看到哪个方法花费的时间最多。不过我的猜测是,它与stackoverflow.com/questions/4154429/apartmentstate-for-dummies 有关
-
开始分析之前:确定您没有在第二种情况下意外使用 DLL 的调试版本?
标签: c# image-processing console-application