On Mon, 12 Aug 2024 17:07:42 GMT, Doug Lea <d...@openjdk.org> wrote:

> The Exchanger class uses spin-waits that are hostile to some uses of 
> VirtualThreads. Improving this requires a means of estimating whether there 
> are many VirtualThreads with few carriers, which can be supported by adding a 
> method in class ForkJoinWorkerThread. This enables a reworking of the 
> exchange method, and can also be used to deal with similar issues in 
> LinkedTransferQueue and possibly elsewhere. We leave for now open whether 
> this method (hasKnownQueuedWork) should be public, which would allow users to 
> use it in similar contexts, at the possible expense of revealing too much 
> about current VT implementation

src/java.base/share/classes/java/util/concurrent/Exchanger.java line 379:

> 377:                             if ((v = p.match) != null) {
> 378:                                 MATCH.set(p, null);
> 379:                                 break outer;     // spin wait

Is this comment accurate?

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

PR Review Comment: https://git.openjdk.org/jdk/pull/20554#discussion_r1715164058

Reply via email to