CA2004: Odebrat volání do GC.Udržení naživu
Název_typu |
RemoveCallsToGCKeepAlive |
CheckId |
CA2004 |
Kategorie |
Microsoft.Reliability |
Změnit rozdělení |
Bez rozdělení |
Příčina
Použití třídy SafeHandle , ale stále obsahují volání na GC.KeepAlive.
Popis pravidla
Pokud převádíte na SafeHandle využití, odeberte veškerá volání GC.KeepAlive (objekt).V tomto případě by není třeba volat třídy GC.KeepAlive,za předpokladu, že nemají finalizačních metod, ale spoléhat na SafeHandle dokončíte popisovač OS.Přestože náklady v volání GC.KeepAlive může být zanedbatelný, měřený výkon vnímání, volání GC.KeepAlive je nezbytné a dostačující k vyřešení problému, který může existovat provede kód těžší udržet životnost.
Jak opravit porušení
Odebrat volání na GC.KeepAlive.
Při potlačení upozornění
Toto upozornění můžete potlačit, pouze pokud není technicky správný převod na SafeHandle využití ve své třídě.