.NET编译器优化

Des*_*ted 3 .net c# clr optimization il

我正在编写一个应用程序,我需要以极低的处理器速度运行.应用程序在整个运行过程中以创造性的方式创建和销毁内存,并且工作得很好.什么编译器优化发生,所以我可以尝试构建到那个?

另一个技巧是CLR处理数组比列表快得多,所以如果你需要处理List中的大量元素,你可能最好调用ToArray()并处理它而不是一次又一次地调用ElementAt() .

Rob*_*sor 8

构建您的系统,运行它,然后附加一个分析器,看看什么是慢的.然后使用Stack Overflow,Google和常识来加速这些领域.

最重要的是不要浪费时间加速实际上无关紧要的事情,因此分析非常重要.


小智 6

你可能意味着高速,而不是低速.

错误的语言.对于总体优化,您需要更低级别的东西.但是,大部分都不需要.

注意顺便说一句,您对数组和列表的指示是错误的......根据您选择的列表,列表是链表,因此具有与数组不同的性能特征.但那不是CLR /运行时的事情.

除了StringBuilder之外 - 我的主要建议是:使用分析器.大多数人都试图通过速度变得聪明,但从不描述,因此在以后花费大量时间进行无用的优化 - 你得到的速度更快,但是更糟糕.首先找出应用程序实际花费时间的位置.