Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Уведомляет узел о том, что выполняющаяся в данный момент задача вот-вот покинет среду CLR и введет неуправляемый код.
Важно!
Соответствующий вызов IHostTaskManager::EnterRuntime уведомляет узел о том, что выполняющаяся в данный момент задача повторно вводит управляемый код.
Синтаксис
HRESULT LeaveRuntime (
[in] SIZE_T target
);
Параметры
target
[in] Адрес в сопоставленном переносимом исполняемом файле вызываемой неуправляемой функции.
Возвращаемое значение
| HRESULT | Описание: |
|---|---|
| S_OK |
LeaveRuntime возвращается успешно. |
| HOST_E_CLRNOTAVAILABLE | Среда CLR не была загружена в процесс или среда CLR находится в состоянии, в котором она не может выполнить управляемый код или обработать вызов. |
| HOST_E_TIMEOUT | Истекло время ожидания звонка. |
| HOST_E_NOT_OWNER | Вызывающий объект не является владельцем блокировки. |
| HOST_E_ABANDONED | Событие было отменено во время ожидания заблокированного потока или волокна. |
| E_FAIL | Произошла неизвестная катастрофическая ошибка. Когда метод возвращает E_FAIL, среда CLR больше не поддерживается в процессе. Последующие вызовы методов размещения возвращают HOST_E_CLRNOTAVAILABLE. |
| E_OUTOFMEMORY | Недостаточно памяти для выполнения запрошенного выделения. |
Комментарии
Последовательности вызовов в неуправляемый код и из неуправляемого кода могут быть вложенными. Например, в приведенном ниже списке описывается гипотетическая ситуация, в которой последовательность вызовов LeaveRuntime, IHostTaskManager::ReverseEnterRuntime, IHostTaskManager::ReverseLeaveRuntime позволяет IHostTaskManager::EnterRuntime узлу идентифицировать вложенные слои.
| Действие | Вызов соответствующего метода |
|---|---|
| Управляемый исполняемый файл Visual Basic вызывает неуправляемую функцию, написанную на языке C, с помощью вызова платформы. | IHostTaskManager::LeaveRuntime |
| Неуправляемая функция C вызывает метод в управляемой библиотеке DLL, написанной на C#. | IHostTaskManager::ReverseEnterRuntime |
| Управляемая функция C# вызывает другую неуправляемую функцию, написанную на языке C, также используя вызов платформы. | IHostTaskManager::LeaveRuntime |
| Вторая неуправляемая функция возвращает выполнение функции C#. | IHostTaskManager::EnterRuntime |
| Функция C# возвращает выполнение первой неуправляемой функции. | IHostTaskManager::ReverseLeaveRuntime |
| Первая неуправляемая функция возвращает выполнение в программу Visual Basic. | IHostTaskManager::EnterRuntime |
Требования
Платформы: см. раздел Требования к системе.
Заголовка: MSCorEE.h
Библиотека: Включено в качестве ресурса в MSCorEE.dll
версии платформа .NET Framework: доступно с версии 2.0