要Improvide C#.NET应用程序的性能..提高应用程序性能
在我的应用我使用第三方的Interop/DLL到进程.doc文件。
这是一个简单的操作, 其中通过输入/输出FilePath Interop DLL ... & DLL将执行文本格式输入文件。
为了提高性能我曾尝试,
- 执行2 therad处理32个文件。(每个线程处理16个文件)
- 通过创建2个新的应用程序域(每个应用程序域码过程16页的文件执行的应用程序代码)
- 执行代码使用TPL(任务中并行库)
但所有选项需要大约同一时间(32秒)来处理32个文件。手动过程花费相同的32秒来处理32个文件。
刚刚试过一件事..当我创建了示例exe来处理16个文件作为输入&输出引用在TextBox中给出的路径。
..我打开2个exe实例进行处理。 1 EXE具有不同16个输入文件&输出与输入文件路径创建 2的exe具有不同16输入文件&输出创建与输入文件路径
当我点击两者的exe的开始按钮..它使用100%的CPU &显着利用两个核心&进程32个文件在16秒内完成。
我们可以提供这种明确的prallism来提高我的应用程序性能吗?
您是否尝试过详细分析应用程序?如果I/O是缓慢的主要来源,那么你不能通过并行来解决它。 – kennytm 2010-03-22 08:46:53