On Sat, 16 Dec 2023 17:25:20 GMT, Alan Bateman <al...@openjdk.org> wrote:
> A lot of test changes have accumulated in the loom repo, this includes both > new tests and updates to existing tests. Some of these updates can be brought > to the main line. This update brings over: > > - The existing tests for pinning use synchronized blocks. In preparation for > changes to allow carrier thread be released when a virtual thread parks > holding a monitor or blocks on monitorenter, these tests are changed to pin > by having a native frame on the stack. This part includes test infrastructure > to make it easy to add more tests that do operations while pinned. The tests > still test what they were originally created to test of course. > > - The test for the JFR jdk.VirtualThreadPinned event is refactored to allow > for additional cases where the event may be reported. > > - ThreadAPI is expanded to cover test for uncaught exception handling. > > - GetStackTraceWhenRunnable is refactored to not use a Selector, otherwise > this test will be invalidated when blocking selection operations release the > carrier. > > - StressStackOverflow is dialed down to run for 1m instead of 2mins. > > - The use of CountDownLatch in a number of tests that poll thread state has > been dropped to keep the tests as simple as possible. Can you explain your motivation for using AtomicBoolean with a polling loop rather than CountDownLatch(1)? I'm working on a test where I just added a CountDownLatch(1) and am wondering if I should do the same, but I'm not sure if there is something about these tests that is motivating the change. ------------- PR Comment: https://git.openjdk.org/jdk/pull/17136#issuecomment-1861578806