3 ms·
Maybe Assembly unloading, in which case if you wanted to swap out new dlls in memory you'd have to tear down the process and restart it. Definitely not sexy. Th
by fultonfaknem42 7y ago
Maybe Assembly unloading, in which case if you wanted to swap out new dlls in memory you'd have to tear down the process and restart it. Definitely not sexy. That being said: I think Assembly Unloading is a thing now (and AppDomains don't exist in .NET Core last I heard).
- rafaelvasco 7y agoYeah, if I remember correctly it's indeed a thing in latest versions of .NET Core;
- fultonfaknem42 7y agoThis looks like a pretty cool demonstration of what we're talking about: https://www.strathweb.com/2019/01/collectible-assemblies-in-net-core-3-0/ https://www.strathweb.com/2019/01/collectible-assemblies-in-... See the section titled: Collecting a dynamically emitted assembly
- rafaelvasco 7y agoYeah that's exactly it. Thanks!
- teh_klev 7y agoIn .NET standard (i.e. not .NET Core) you can load and unload assemblies without tearing down whole processes by creating AppDomains within a process. You then load your desired assemblies into these app domain(s), consume and when you need to load say a newer DLL version you just tear down the AppDomain and create a new one for the new DLL's. It's a feature that's been around since .NET 1.1 and I used to use heavily 10+ years ago. https://docs.microsoft.com/en-us/dotnet/api/system.appdomain?view=netframework-4.8 https://docs.microsoft.com/en-us/dotnet/api/system.appdomain...