CA2004: Odeberte volání GC.KeepAlive
TypeName |
RemoveCallsToGCKeepAlive |
CheckId |
CA2004 |
Kategorie |
Microsoft.Reliability |
Narušující změna |
Nenarušující |
Příčina
Použití třídy SafeHandle , ale stále obsahovat volání GC.KeepAlive.
Popis pravidla
Při převodu do SafeHandle využití, odeberte všechna volání GC.KeepAlive (objekt).V takovém případě by neměly mít třídy volání GC.KeepAlive,za předpokladu, že nemají finalizační metody, ale spoléhat na SafeHandle k dokončení popisovač operačního systému. Přestože náklady na ukončení volání GC.KeepAlive může být zanedbatelný, měřeno výkonností vnímání, volání GC.KeepAlive je nezbytné a dostačující k řešení problému, který již neexistuje dělá těžší Udržovat kód života.
Jak vyřešit porušení
Odebrat volání GC.KeepAlive.
Kdy potlačit upozornění
Můžete potlačit toto upozornění pouze v případě, že není technicky správné převést SafeHandle využití ve vaší třídě.