On Tue, 5 Oct 2021 20:56:43 GMT, Chris Plummer <cjplum...@openjdk.org> wrote:

>> Regarding threadControl_resumeThread() it does appear that it would block, 
>> as would threadControl_resumeAll(), which seems problematic in that 
>> blockOnDebuggerSuspend() won't exit until the suspendCount == 0. So it's 
>> unclear to me how this is suppose to work if a resume() can't be done.
>
> It seems if we had a test case where the debugger did a 
> ThreadReference.suspend(), then the debuggee did a Thread.resume() on the 
> same thread, and then debugger did a ThreadReference.resume(), it would 
> block, and with no way to unblock it.

I'll see if I can implement such a test. Also I have I prototype that defers 
the actions of handleAppResumeBreakpoint() until doPendingTasks() is running. 
This seems to work in the various jdi/jdwp tests which likely do not cover the 
functionality very well though.

-------------

PR: https://git.openjdk.java.net/jdk/pull/5805

Reply via email to