当服务器GC被忽略? [英] When server GC is ignored?
问题描述
我在关于.NET 4 GC的MSDN文章中发现了这一点: http:/ /msdn.microsoft.com/en-us/library/ee787088.aspx
工作站垃圾收集始终在拥有的计算机上使用只有一个处理器,无论设置如何。如果指定服务器垃圾回收,CLR将使用工作站垃圾回收并发禁用功能。
我会认为他们的意思是一个物理CPU。然而,我在服务器GC模式下运行我的应用程序(或者至少我以为我是这样做的)在一台CPU上,但有8个HT逻辑处理器的服务器上......
以下代码输出'true'
System.Runtime.GCSettings.IsServerGC
所以我没有得到它 - 或者下面的代码打印不正确的信息,或者它们意味着没有HT的单个核心CPU ...
任何人都可以解释它吗?
看来单处理器线程CPU。
I found this in the MSDN article about .NET 4 GC : http://msdn.microsoft.com/en-us/library/ee787088.aspx
"Workstation garbage collection is always used on a computer that has only one processor, regardless of the setting. If you specify server garbage collection, the CLR uses workstation garbage collection with concurrency disabled."
I would think that they mean one physical CPU. However I run my app in server GC mode (or at least I thought I did) on a server with one CPU but 8 HT logical processors...
The following code outputs 'true'
System.Runtime.GCSettings.IsServerGC
So I dont get it - either the following code prints incorrect information or they meant one single core CPU without HT...
Anyone could explain it definitely?
it seems the "one processor" refers to a single core no hyper-threading CPU.
这篇关于当服务器GC被忽略?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!