Marshal.CleanupUnusedObjectsInCurrentContext Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Powiadamia środowisko uruchomieniowe o wyczyszczeniu wszystkich otoek z możliwością wywołania środowiska uruchomieniowego (RCW) przydzielonych w bieżącym kontekście.
public:
static void CleanupUnusedObjectsInCurrentContext();
public static void CleanupUnusedObjectsInCurrentContext();
[System.Security.SecurityCritical]
public static void CleanupUnusedObjectsInCurrentContext();
static member CleanupUnusedObjectsInCurrentContext : unit -> unit
[<System.Security.SecurityCritical>]
static member CleanupUnusedObjectsInCurrentContext : unit -> unit
Public Shared Sub CleanupUnusedObjectsInCurrentContext ()
- Atrybuty
Uwagi
System międzyoperacyjności pompuje komunikaty podczas próby wyczyszczenia RCW. Gwarantuje to, że czyszczenie pojedynczych wątków apartamentów (STA) RCW odbywa się we wszystkich aplikacjach, w tym w aplikacjach, które nie pompują wystarczająco często. Jednak niektóre aplikacje, które odpowiednio pompują, są bardzo wrażliwe na to, gdzie występuje pompowanie. Gdy międzyoperacyjność pompuje komunikaty w tych aplikacjach, w miejscach, które są nieoczekiwane, aplikacja może napotkać ponownie problemy, które są trudne do zdiagnozowania. W związku z tym aplikacje muszą być w stanie kontrolować własne pompowanie dla określonego STA i kontrolować czyszczenie RCW.
Jednak deweloperzy często kontrolują tylko podzestaw wątków w swojej aplikacji i w związku z tym nie mogą upewnić się, że wszystkie wątki są odpowiednio pompowane.
Aby rozwiązać ten problem:
Thread.DisableComObjectEagerCleanup Użyj metody , aby wyłączyć automatyczne czyszczenie RCWs i pompowanie komunikatów, które występuje, na podstawie wątku. Dzięki temu deweloperzy mogą zrezygnować z automatycznego czyszczenia i odpowiedniego pompowania komunikatów.
CleanupUnusedObjectsInCurrentContext Użyj metody , aby powiadomić środowisko uruchomieniowe, aby wyczyścić wszystkie RCW przydzielone w bieżącym kontekście. Ta metoda towarzysza umożliwia deweloperom precyzyjne kontrolowanie, kiedy środowisko uruchomieniowe wykonuje oczyszczanie w bieżącym kontekście.