Bagikan melalui


Metode IHostTaskManager::LeaveRuntime

Memberi tahu host bahwa tugas yang saat ini dijalankan akan meninggalkan runtime bahasa umum (CLR) dan masukkan kode yang tidak terkelola.

Penting

Panggilan yang sesuai ke IHostTaskManager::EnterRuntime memberi tahu host bahwa tugas yang sedang dijalankan memasukkan kembali kode terkelola.

Sintaks

HRESULT LeaveRuntime (  
    [in] SIZE_T target  
);  

Parameter

target
[in] Alamat dalam file executable portabel yang dipetakan dari fungsi tidak terkelola yang akan dipanggil.

Tampilkan Nilai

HRESULT Deskripsi
S_OK LeaveRuntime berhasil dikembalikan.
HOST_E_CLRNOTAVAILABLE Runtime bahasa umum belum dimuat ke dalam proses, atau runtime bahasa umum dalam status yaitu tidak dapat menjalankan kode aman atau memproses panggilan dengan sukses.
HOST_E_TIMEOUT Waktu panggilan habis.
HOST_E_NOT_OWNER Pemanggil tidak memiliki kunci.
HOST_E_ABANDONED Peristiwa dibatalkan saat rangkaian atau fiber yang diblokir sedang menunggunya.
E_FAIL Kegagalan katastrofe yang tidak diketahui terjadi. Saat metode menampilkan E_FAIL, CLR tidak lagi dapat digunakan dalam proses. Panggilan berikutnya ke metode hosting menampilkan HOST_E_CLRNOTAVAILABLE.
E_OUTOFMEMORY Tidak tersedia cukup memori untuk menyelesaikan alokasi yang diminta.

Keterangan

Urutan panggilan ke dan dari kode yang tidak dikelola dapat ditumpuk. Misalnya, daftar di bawah ini menjelaskan situasi hipotetis di mana urutan panggilan ke LeaveRuntime, IHostTaskManager::ReverseEnterRuntime, IHostTaskManager::ReverseLeaveRuntime, dan IHostTaskManager::EnterRuntime memungkinkan host mengidentifikasi lapisan bersarang.

Tindakan Panggilan Metode yang Sesuai
Executable Visual Basic terkelola memanggil fungsi tidak terkelola yang ditulis dalam C dengan menggunakan pemanggilan platform. IHostTaskManager::LeaveRuntime
Fungsi C yang tidak terkelola memanggil metode dalam DLL terkelola yang ditulis dalam C#. IHostTaskManager::ReverseEnterRuntime
Fungsi C# terkelola memanggil fungsi lain yang tidak terkelola yang ditulis dalam C, juga menggunakan pemanggilan platform. IHostTaskManager::LeaveRuntime
Fungsi kedua yang tidak terkelola mengembalikan eksekusi ke fungsi C#. IHostTaskManager::EnterRuntime
Fungsi C# mengembalikan eksekusi ke fungsi pertama yang tidak terkelola. IHostTaskManager::ReverseLeaveRuntime
Fungsi pertama yang tidak terkelola mengembalikan eksekusi ke program Visual Basic. IHostTaskManager::EnterRuntime

Persyaratan

Platform: Lihat Persyaratan Sistem.

Header: MSCorEE.h

Pustaka: Disertakan sebagai sumber daya di MSCorEE.dll

Versi .NET Framework: Tersedia mulai dari 2.0

Lihat juga