Profilling结果 - 如何理解

时间:2016-09-16 10:28:45

标签: c# profiling

我使用Unity IOC对我的控制台应用程序进行了分析,并使用HttpCLient进行了大量调用。如何理解?

功能名称,包含样本,独家样本,包含样本%,独家样本%

myfun

什么意味着//declare myfun function myfun(x, functionToBeCalled) { functionToBeCalled(x); } //call myfun and pass a function as an argument myfun(2, function(x) { console.log("Value of x is: "+ x ); });的包容性样本为Microsoft.Practices.Unity.UnityContainer.Resolve 175 58 38.89 12.89 Microsoft.Practices.Unity.UnityContainer..ctor 29 29 6.44 6.44 System.Runtime.CompilerServices.AsyncTaskMethodBuilder1[System.DateTime].Start 36 13 8.00 2.89 Microsoft.Practices.Unity.UnityContainerExtensions.RegisterInstance 9 9 2.00 2.00 System.Net.Http.HttpClientHandler..ctor 9 9 2.00 2.00 System.Net.Http.HttpMessageInvoker.Dispose 9 9 2.00 2.00 System.Activator.CreateInstance 20 8 4.44 1.78 Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve 115 3 25.56 0.67 但排他性为Microsoft.Practices.Unity.UnityContainer.Resolve?好吗?不是太多了?

1 个答案:

答案 0 :(得分:1)

"包容性和#34;意味着"独家时间加上在所有被监护人身上花费的时间"。 忘掉"独家"东西。 "包容性和#34;这是它给你付出的代价。

它说UnityContainer.Resolve花费你39%的时间, 和Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve花费你26%。 看起来第一个叫第二个,所以你不能把他们的时间加在一起。 如果你可以避免调用所有这些东西,你将节省至少40%,给你一个至少100/60或1.67或67%的加速

顺便说一句,Unity内容虽然没有完全弃用,但不再被维护。