首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ConfigurationManager vs变量

ConfigurationManager vs变量
EN

Stack Overflow用户
提问于 2014-09-12 19:50:55
回答 2查看 112关注 0票数 0

因此,我在我们的WCF服务中看到了一段代码,它从配置(appsettings)中读取一个值,并将该值分配给一个变量。随后会询问该变量以更改方法调用的结果。

有问题的特定WCF调用被调用了很多。我在考虑删除变量和它的分配,并因此在它所在的地方多次调用ConfigurationManager.AppSettings"seeting“是否比为新变量分配内存以在每次方法调用时保存ConfigurationManager.AppSettings"seeting”值(尽管在方法执行的顶部每次调用一次)性能更好。

这可能是一个微优化,但是每次执行时在堆上分配内存,让我思考是询问AppSettings后面的NameValueCollection更快,还是为稍微干净的代码分配内存。

欢迎发表意见。

EN

回答 2

Stack Overflow用户

发布于 2014-09-12 19:56:44

观点:微优化是万恶之源……

如果你发现它是一个问题,试着去解决它。否则,我怀疑这真的是一个问题。唯一的问题是,为了弄清楚这一点,您必须花一些时间分析您的应用程序。你将花费的时间可能比你节省的时间要长。真的由你决定。

(话虽如此,我知道你的感受,因为有时我自己也在思考这些问题……我通常会试着把自己踢回富有成效的工作中,而不是白日做梦……:)

票数 1
EN

Stack Overflow用户

发布于 2014-09-12 20:11:24

我怀疑您的问题出在ConfigurationManager上,因为(根据MSDN):

For some sections such as appSettings and connectionStrings, use the AppSettings and ConnectionStrings classes. These members perform read-only operations, use a single cached instance of the configuration, and are multithread aware. - http://msdn.microsoft.com/en-us/library/system.configuration.configurationmanager(v=vs.110).aspx

由于appsettings是缓存的,所以通过ConfigurationManager.AppSettings"x“访问集合不会是一种浪费的操作。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25807681

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档