Converts the tested threads in nsk/jdb to jdk.test.lib.thread.ThreadWrapper so they can run under JTREG_TEST_THREAD_FACTORY=Virtual. Per JDK-8381657, the conversion targets "spawned threads that make actual work in the tests".
12 debuggees converted. Because jdb output identifies threads by name, threads that stored their name in a field without setting it now call super(name), and the debuggers look threads up with getThreadIdsByName(<name>) instead of getThreadIds(<class>) - after conversion the running class is java.lang.Thread / VirtualThread, not the test's own class. next001a and step_up001a additionally gain a naming constructor: unnamed virtual threads have an empty name (platform threads get "Thread-N"), which made jdb's breakpoint prompt unrecognizable to the harness. 10 of these tests pass -jdb.option=-trackallthreads in their @run block (per-test, following the nsk/jdi -includevirtualthreads precedent): jdb only tracks a virtual thread once it sees an event on it, so tested threads were otherwise missing from "threads" output. thread002's switch check now greps each thread command's own reply (the name appears three times in the accumulated output), and interrupt001's tid pattern matches on thread name rather than class. Four tests stay on platform threads, each with a comment giving the reason: threadgroup002 / threadgroups002 - their threads take super(group, name); Thread.Builder.OfVirtual has no ThreadGroup option, and thread-group placement is what these tests exercise kill/kill002 - jdb's kill (JVMTI StopThread) rejects a virtual thread unmounted in Object.wait() with "Operation is not supported on the current frame" suspend/suspend001 - after "suspend <id>" of the virtual thread plus "cont", jdb stops responding (no prompt); happy to file a separate bug if this looks like a jdb/JDI issue worth tracking trace001 and kill001 are unchanged - their threads already go through JDIThreadFactory, so they are virtual-capable Testing: full nsk/jdb on linux-x64-OL-9 with the default factory and with JTREG_TEST_THREAD_FACTORY=Virtual - all pass in both; plus a five-platform run (linux-x64, linux-aarch64, macosx-x64, macosx-aarch64, windows-x64) in both modes --------- - [x] I confirm that I make this contribution in accordance with the [OpenJDK Interim AI Policy](https://openjdk.org/legal/ai). ------------- Commit messages: - 8382272: Update nsk/jdb tests to use ThreadWrapper Changes: https://git.openjdk.org/jdk/pull/32142/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=32142&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8382272 Stats: 103 lines in 24 files changed: 43 ins; 0 del; 60 mod Patch: https://git.openjdk.org/jdk/pull/32142.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/32142/head:pull/32142 PR: https://git.openjdk.org/jdk/pull/32142
