Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Memunggah Assemblies yang Dimuat dengan Assembly.LoadFrom() dalam C#?

Bagaimana untuk Memunggah Assemblies yang Dimuat dengan Assembly.LoadFrom() dalam C#?

Susan Sarandon
Lepaskan: 2024-12-28 21:19:21
asal
267 orang telah melayarinya

How to Unload Assemblies Loaded with Assembly.LoadFrom() in C#?

Memunggah Perhimpunan Dimuat dengan Assembly.LoadFrom()

Dalam C#, pemasangan yang dimuatkan menggunakan Assembly.LoadFrom() perlu dipunggah secara eksplisit untuk mengosongkan memori dan melepaskan sumber diadakan oleh perhimpunan.

Memunggah Perhimpunan

Untuk memunggah pemasangan, anda boleh menggunakan kaedah AppDomain.Unload. Kaedah ini memunggah AppDomain yang ditentukan, yang seterusnya memunggah semua pemasangan yang dimuatkan dalam AppDomain itu. Contohnya:

// Create a new AppDomain and load the assembly
AppDomain dom = AppDomain.CreateDomain("some");
AssemblyName assemblyName = new AssemblyName();
assemblyName.CodeBase = pathToAssembly;
Assembly assembly = dom.Load(assemblyName);

// Get the types from the assembly
Type[] types = assembly.GetTypes();

// Unload the AppDomain
AppDomain.Unload(dom);
Salin selepas log masuk

Memanggil Pemungut Sampah Secara Eksplisit

Memanggil assem = null sahaja tidak menjamin pemasangan akan dipunggah serta-merta. Pengumpul sampah masih perlu berlari untuk menuntut semula sumber yang tidak dirujuk. Anda tidak boleh memanggil pemungut sampah secara eksplisit dalam C#.

Walau bagaimanapun, anda boleh memaksa pemungut sampah berjalan lebih awal dengan memanggil kaedah GC.Collect. Kaedah ini mencetuskan kitaran kutipan sampah dan cuba menuntut semula semua objek yang tidak boleh dicapai. Walaupun GC.Collect boleh digunakan untuk meningkatkan prestasi dalam sesetengah senario, biasanya tidak digalakkan untuk bergantung padanya secara berlebihan, kerana ia boleh memperkenalkan jeda dalam aplikasi anda.

Atas ialah kandungan terperinci Bagaimana untuk Memunggah Assemblies yang Dimuat dengan Assembly.LoadFrom() dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan