Compartir a través de


IHostGCManager::ThreadIsBlockingForSuspension (Método)

Notifica al host que el subproceso desde el que se ha efectuado la llamada al método está a punto de bloquearse para una recolección de elementos no utilizados.

HRESULT ThreadIsBlockingForSuspension ();

Valor devuelto

HRESULT

Descripción

S_OK

ThreadIsBlockingForSuspension finalizó correctamente.

HOST_E_CLRNOTAVAILABLE

Common Language Runtime (CLR) no se ha cargado en un proceso o está en un estado en el que no puede ejecutar el código administrado o procesar la llamada correctamente.

HOST_E_TIMEOUT

Se agotó el tiempo de espera de la llamada.

HOST_E_NOT_OWNER

El llamador no posee el bloqueo.

HOST_E_ABANDONED

Se canceló un evento mientras una fibra o un subproceso bloqueado estaba esperándole.

E_FAIL

Se ha producido un error catastrófico desconocido. Si un método devuelve E_FAIL, CLR no se puede seguir utilizando en el proceso. Las llamadas subsiguientes a métodos de hospedaje devuelven HOST_E_CLRNOTAVAILABLE.

Comentarios

Common Language Runtime generalmente llama al método ThreadIsBlockForSuspension para preparar una recolección de elementos no utilizados y dar al host una oportunidad de reprogramar el subproceso para las tareas no administradas.

Nota importanteImportante

El host sólo puede reprogramar las tareas después de una llamada a ThreadIsBlockingForSuspension.Una vez que el motor en tiempo de ejecución llama a SuspensionStarting, el host no debe reprogramar ninguna tarea.

Requisitos

Plataformas: vea Requisitos de sistema de .NET Framework.

Encabezado: MSCorEE.h

Biblioteca: Se incluye como recurso en MsCorEE.dll

Versiones de .NET Framework: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

Vea también

Referencia

ICLRTask (Interfaz)

ICLRTaskManager (Interfaz)

IHostTask (Interfaz)

IHostTaskManager (Interfaz)

IHostGCManager (Interfaz)