-
Notifications
You must be signed in to change notification settings - Fork 137
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Stop Debugging in a "noDebug" session doesn't kill subprocesses #125
Comments
Sorry, I posted the wrong place |
@kenmillar253 I moved this issue from python extension repo to the debugger repo. This issue should be looked at by the debugger first. |
|
This is probably #3 |
Hi @int19h , I have check this link #3. As you mentioned, how can I set launch.json to perform its own cleanup? Which args? |
@kenmillar253 don't install |
@karthiknadig I have install this dev vsix now. |
If you do |
@int19h It print 5.0.0a12 There is one child process not closed with its parent pid become 1 |
Mystery solved - the reason why I couldn't repro is because I didn't notice that you were using Ctrl+F5 (i.e. running without debugging). The problem is that when we're not debugging, we're also not able to detect subprocesses. So when you stop the no-debug session, we kill the parent Django process, but not the child process that it had spawned. We'll need to add some special cleanup to the launcher to kill the entire process tree in this scenario. |
… subprocesses On Win32, use job objects to tie the lifetime of debuggee and its subprocesses to that of the launcher process. On POSIX, run the launcher and its children in a separate process group (PGID), and kill the entire group when launcher exits.
… subprocesses On Windows, run the debuggee in a separate Win32 job, and terminate the job when launcher exits. On POSIX, run the debuggee in a separate process group (PGID), and kill the entire group when launcher exits.
… subprocesses On Windows, run the debuggee in a separate Win32 job, and terminate the job when launcher exits. On POSIX, run the debuggee in a separate process group (PGID), and kill the entire group when launcher exits.
… subprocesses On Windows, run the debuggee in a separate Win32 job, and terminate the job when launcher exits. On POSIX, run the debuggee in a separate process group (PGID), and kill the entire group when launcher exits. Improve process tree autokill tests to actually check whether the child process has exited.
VSCode Version: 1.42.1
OS Version: Ubuntu 18.04
Steps to Reproduce:
The text was updated successfully, but these errors were encountered: