Udostępnij za pośrednictwem


EMemoryCriticalLevel — Wyliczenie

Zawiera wartości wskazujące wpływ awarii, gdy zażądano określonej alokacji pamięci, ale nie można jej spełnić.

Składnia

typedef enum {  
    eTaskCritical      = 0,  
    eAppDomainCritical = 1,  
    eProcessCritical   = 2  
} EMemoryCriticalLevel;  

Elementy członkowskie

Członek Opis
eAppDomainCritical Wskazuje, że alokacja ma krytyczne znaczenie dla wykonywania kodu zarządzanego w domenie, która zażądała alokacji. Jeśli nie można przydzielić pamięci, clR nie może zagwarantować, że domena będzie nadal można używać. Host decyduje, jaką akcję należy podjąć, gdy alokacja nie może być spełniona. Może on poinstruować CLR, aby przerwał AppDomain działanie automatycznie lub zezwolić na jego działanie przez wywołanie metod w ICLRPolicyManager.
eProcessCritical Wskazuje, że alokacja ma kluczowe znaczenie dla wykonywania kodu zarządzanego w procesie. Ta wartość jest używana podczas uruchamiania i podczas uruchamiania finalizatorów. Jeśli nie można przydzielić pamięci, clR nie może działać w procesie. Jeśli alokacja nie powiedzie się, clR zostanie skutecznie wyłączona. Wszystkie kolejne wywołania środowiska CLR kończą się niepowodzeniem z HOST_E_CLRNOTAVAILABLE.
eTaskCritical Wskazuje, że alokacja ma kluczowe znaczenie dla uruchomienia zadania, które zażądało alokacji. Jeśli nie można przydzielić pamięci, clR nie może zagwarantować, że zadanie można wykonać. W przypadku awarii clR zgłasza wartość ThreadAbortException w wątku systemu operacji fizycznej.

Uwagi

Metody alokacji pamięci zdefiniowane w interfejsach IHostMemoryManager i IHostMAlloc przyjmują parametr tego typu. W zależności od ważności błędu host może zdecydować, czy żądanie alokacji ma zostać natychmiast nieudane, czy poczekać na jego spełnienie.

Wymagania

Platformy: Zobacz Wymagania systemowe.

Nagłówka: MSCorEE.h

Biblioteka: MSCorEE.dll

wersje .NET Framework: dostępne od wersji 2.0

Zobacz też