dotnet / interactive

.NET Interactive combines the power of .NET with many other languages to create notebooks, REPLs, and embedded coding experiences. Share code, explore data, write, and learn across your apps in ways you couldn't before.
MIT License
2.88k stars 382 forks source link

send a dispose command before killing the child process #2180

Open brettfo opened 2 years ago

brettfo commented 2 years ago

When stopping/restarting the backing process from the VS Code extension, we blindly call .kill(), but some kernels, particularly remote proxies, might need to clean up some resources. We should first send DisposeCommand or similar, give the backing process a short amount of time to respond, and only then would we manually send the .kill() signal if it didn't gracefully exit on its own.

jonsequitur commented 2 years ago

The child process should be able to handle its own disposal on termination rather than needing a custom gesture for it. Is there a specific case where this is not happening?