8309146: extend JDI StackFrame.setValue() and JDWP StackFrame.setValues minimal support for virtual threads

Reviewed-by: sspitsyn, alanb
This commit is contained in:
Chris Plummer 2023-06-01 15:33:20 +00:00
parent be36096a19
commit e8271649e0
2 changed files with 5 additions and 5 deletions

View File

@ -2641,7 +2641,7 @@ JDWP "Java(tm) Debug Wire Protocol"
"<p>" "<p>"
"If the thread is a virtual thread then this command can be used to set " "If the thread is a virtual thread then this command can be used to set "
"the value of local variables in the top-most frame when the thread is " "the value of local variables in the top-most frame when the thread is "
"suspended at a breakpoint or single step event. The target VM may support " "suspended at an event. The target VM may support "
"setting local variables in other cases." "setting local variables in other cases."
(Out (Out
(threadObject thread "The frame's thread. ") (threadObject thread "The frame's thread. ")
@ -2659,7 +2659,7 @@ JDWP "Java(tm) Debug Wire Protocol"
(Error INVALID_THREAD) (Error INVALID_THREAD)
(Error INVALID_OBJECT) (Error INVALID_OBJECT)
(Error INVALID_FRAMEID) (Error INVALID_FRAMEID)
(Error OPAQUE_FRAME "The thread is a virtual thread and the target VM " (Error OPAQUE_FRAME "The thread is a suspended virtual thread and the target VM "
"does not support setting the value of local " "does not support setting the value of local "
"variables in the frame.") "variables in the frame.")
(Error VM_DEAD) (Error VM_DEAD)

View File

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 1998, 2022, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1998, 2023, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
@ -201,7 +201,7 @@ public interface StackFrame extends Mirror, Locatable {
* <p> * <p>
* In the case of virtual threads, the target VM supports setting values * In the case of virtual threads, the target VM supports setting values
* of local variables when this frame is the topmost frame and the thread * of local variables when this frame is the topmost frame and the thread
* is suspended at a breakpoint or single step event. The target VM may * is suspended at an event. The target VM may
* support setting local variables in other cases. * support setting local variables in other cases.
* <p> * <p>
* Object values must be assignment compatible with the variable type * Object values must be assignment compatible with the variable type
@ -224,7 +224,7 @@ public interface StackFrame extends Mirror, Locatable {
* invalid. Once the frame's thread is resumed, the stack frame is * invalid. Once the frame's thread is resumed, the stack frame is
* no longer valid. * no longer valid.
* @throws OpaqueFrameException if this frame is on the call stack of a * @throws OpaqueFrameException if this frame is on the call stack of a
* virtual thread and the target VM does not support setting the value of * suspended virtual thread, and the target VM does not support setting the value of
* local variables in this frame. * local variables in this frame.
* @throws VMCannotBeModifiedException if the VirtualMachine is read-only. * @throws VMCannotBeModifiedException if the VirtualMachine is read-only.
* @see VirtualMachine#canBeModified() * @see VirtualMachine#canBeModified()