【发布时间】:2009-11-27 06:27:43
【问题描述】:
我们有一个“打印引擎”,它基本上选择预定义的任务来针对文件运行,这些“任务”是 .NET 2.0 - 3.5(在 C# 中)命令行应用程序。
它所做的只是一个接一个地运行,并且使用我们尚未内部开发的应用程序,它们运行得非常快,通常为 10-30 毫秒。
但是,我们的 .NET 应用程序通常需要 1-3 秒,当您处理每个文件和多个文件的多个可执行文件时,所有这些都同步执行,我们最终会等待很长的时间。
通常这些应用程序会做一些数据库工作和一些非常基本的文件修改(纯文本内容)。我们甚至剥离了一些应用程序,以查看是否只是 .NET Framework 的开销导致一切变慢,并且每个研究过它的人都刚刚得出结论
".NET 很慢,而且不是为了 以这种方式执行。”
我想知道这是否属实,以及我可以使用哪些技术来追踪问题或缓解滞后。我尝试过使用分析器,但到目前为止,我还没有看到会重复执行命令行 .NET 应用程序的分析器,这就是我们所做的。大多数人只想运行一次可执行文件并附加到它以对其进行分析。
理想情况下,我们希望完全不使用打印引擎并开发我们自己的更高效的引擎,但这不会发生。
【问题讨论】:
-
只是一个参考(不想编辑帖子并引起颠簸),我将对此进行性能测试,并在有时间时用实数和 sn-ps 更新问题。我没有忘记它:)
标签: c# .net performance