2014-09-26 28 views
-2

所以,我一直在使用.NET框架。当我打电话给一些静态函数或列表<>的实例方法时,我曾经多次想知道这些操作的相对性能成本是多少。在这种情况下,我想知道静态方法Enum.GetValues()是多么可怕。有没有什么地方可以比较.NET操作的运行时间?如果不是,你怎么知道哪些方法可以经常被安全地调用,哪些方法应该避免?我只需要用定时器测试每种方法(请不要......)或者这是我过分关心的事情?在.NET(C#)中是否有任何可以找到运行时/成本/内存占用量分析的地方/ wiki/book?

在此先感谢。

+7

http://ericlippert.com/2012/12/17/performance-rant/ – gunr2171 2014-09-26 01:51:15

+0

只是为了记录,我的假设,因为这是一个静态方法是他们刚刚在Enum的编译时创建了一个数组,但是他们仍然可能需要给我一个单独的数组的副本,这需要时间......这就是为什么我担心。 – guitar80 2014-09-26 01:51:19

+0

这当然是一篇很好的文章,但我的问题并不是真正的“哪个更快”,而且我不确定它会在这种情况下发生什么。我只是好奇,如果有一个地方我可以看。如果没有其他的东西,所以我可以尝试在这个过程中保持高效。 – guitar80 2014-09-26 01:54:12

回答

4

看性能时有很多变数(无双关语意)。我发现最好的方法是使用第三方软件简单介绍我自己的应用程序。这给了我一个内存使用和效率的想法,但主要是为了我在我的环境中的需求。

这里有一对夫妇(最有试验):

Ants Performance Profiler by redgate

JustTrace by Telerik

dotTrace by JetBrains

dotMemory by JetBrains

+0

这太好了。谢谢一堆!我显然不得不等待一个计时器给你竖起大拇指,但我很感激。 - 约翰 – guitar80 2014-09-26 02:00:05

相关问题