On Mon, 15 Dec 2025 10:19:09 GMT, Viktor Klang <[email protected]> wrote:
>> Doug Lea has updated the pull request incrementally with one additional
>> commit since the last revision:
>>
>> Adjust runworker for previous update
>
> src/java.base/share/classes/java/util/concurrent/ForkJoinPool.java line 1892:
>
>> 1890: }
>> 1891: if (q != null && q.base - qbase > 0)
>> 1892: break;
>
> Crazy idea: Only create new workers on successful CAS if no queue-drift has
> occurred, but always prioritize to wake up sleeping workers regardless?
>
> Suggestion:
>
> if (v != null) {
> v.phase = sp;
> if (v.parking != 0)
> U.unpark(v.owner);
> } else if (q == null || q.base - qbase == 0)
> createWorker();
>
> break;
> }
> if (q != null && q.base - qbase > 0)
> break;
Narrator: Turns out it was crazy, as it requires a back-out of nc. Disregard
the comment above :)
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/28797#discussion_r2618919162