2012-10-23 40 views
2

我想檢測哪個垃圾收集器在運行時在我的單聲道服務中運行。這可能嗎?如何檢測使用哪個垃圾收集器?

+0

爲什麼這很重要?知道如何改變你的編碼? – Enigmativity

+0

它允許我瞭解GC的行爲並訪問可能不在運行時在某個GC中的某些功能(這在.Net Runtime GC中大部分都是如此)。 –

回答

2

是的,這是可能的:

public static bool IsRunningWithSGen() 
{ 
    return System.GC.MaxGeneration > 0; 
} 

和伯姆替代:

public static bool IsRunningWithBoehm() 
{ 
    return System.GC.MaxGeneration == 0; 
}