Summary of the new feature/enhancement
With .Net Core 3.0 release we get new feature - assembly unloading.
This opens the way to full freeing up resources in long-time sessions:
- when unloading modules
- (auto) removing unneeded compiled classes and script blocks
- (auto) removing unneeded types created by means of Add-Type
Proposed technical implementation details
Unload feature requires a complete lack of dependencies and references to this assembly before it can be unloaded. It is necessary to investigate whether it is possible to achieve this in PowerShell Core.
https://github.com/dotnet/coreclr/blob/a7cbc5c8d1bd48cafec48ac50900ff9e96c1485c/Documentation/project-docs/unloadability-howto.md
https://github.com/janvorli/coreclr/blob/f8490b2aae6f5a95b0195e4d5d0d7ad1f654d6f0/Documentation/design-docs/unloadability.md
Summary of the new feature/enhancement
With .Net Core 3.0 release we get new feature - assembly unloading.
This opens the way to full freeing up resources in long-time sessions:
Proposed technical implementation details
Unload feature requires a complete lack of dependencies and references to this assembly before it can be unloaded. It is necessary to investigate whether it is possible to achieve this in PowerShell Core.
https://github.com/dotnet/coreclr/blob/a7cbc5c8d1bd48cafec48ac50900ff9e96c1485c/Documentation/project-docs/unloadability-howto.md
https://github.com/janvorli/coreclr/blob/f8490b2aae6f5a95b0195e4d5d0d7ad1f654d6f0/Documentation/design-docs/unloadability.md