66 Commits

Author SHA1 Message Date
Doug Lea
02ddb13d7b Try out different approach 2026-01-21 11:29:23 -05:00
Doug Lea
a1e5ce94e0 Simplify scan mode control by moving and reworking topLevelExec and throwing on trim 2026-01-18 16:03:31 -05:00
Doug Lea
88f1466dc7 Another set of contend vs deactivate vs park tradeoffs 2026-01-14 07:37:17 -05:00
Doug Lea
bb492a04f8 Fix missing undo 2026-01-12 12:39:44 -05:00
Doug Lea
9e963bcd27 Use explicit store fences or atomics 2026-01-12 12:17:35 -05:00
Doug Lea
400a413020 reunify push; improve contention vs activation vs park balance 2026-01-11 12:04:28 -05:00
Doug Lea
d2b6c7c082 Undo unrelated change 2026-01-08 13:48:32 -05:00
Doug Lea
59e7a4ddda Re-introduce acquiring array reads; re-arrange to rely on volatile base index 2026-01-08 13:29:46 -05:00
Doug Lea
b0d99c2f5e Change signalWork fencing; in-progress activation changes 2026-01-08 10:11:37 -05:00
Doug Lea
4328645c97 Split external push 2026-01-06 17:46:52 -05:00
Doug Lea
2a5807473b Undo/redo ordering changes 2026-01-05 08:09:43 -05:00
Doug Lea
f077eb9eb0 Strengthen some orderings 2026-01-03 10:46:15 -05:00
Doug Lea
a59c4adbdf Fix deactivate; faster quiescence 2026-01-02 15:38:51 -05:00
Doug Lea
9aeff4b047 recheck avoiding cross-class offsets 2025-12-24 14:16:40 -05:00
Doug Lea
ac619505e8 Check reworked ordering control 2025-12-23 14:54:08 -05:00
Doug Lea
3370c0bf34 Check diagnosis 2025-12-18 08:41:32 -05:00
Doug Lea
45f8a9a614 Avoid double-filtering 2025-12-17 09:38:35 -05:00
Doug Lea
debaf274b9 Another diagnostic 2025-12-17 07:51:14 -05:00
Doug Lea
7cc2dd1a0d Relax orderings in push 2025-12-16 14:06:14 -05:00
Doug Lea
61adb1dc2a Reduce fencing 2025-12-15 11:21:22 -05:00
Doug Lea
76dd5ddd06 Adjust runworker for previous update 2025-12-14 08:00:36 -05:00
Doug Lea
e3f012fcd9 Reorder signalWork filter 2025-12-14 07:23:19 -05:00
Doug Lea
685a3ebb8e Revert topLevelExec 2025-12-13 13:52:42 -05:00
Doug Lea
496cef3815 Address review comments 2025-12-13 10:24:55 -05:00
Doug Lea
094d7d758d signalWork diagnostic 2025-12-11 15:12:31 -05:00
Doug Lea
1fb89709a3 filter by index 2025-12-10 08:35:57 -05:00
Doug Lea
96b399a76a For testing 2025-12-09 15:57:52 -05:00
Doug Lea
fd7283be47 8360046: Scalability issue when submitting virtual threads with almost empty tasks
Reviewed-by: vklang
2025-12-02 12:05:31 +00:00
Pavel Rappo
28f2591bad 8370568: Refer to Thread.interrupted as "interrupted status" consistently
Reviewed-by: jpai, rriggs, alanb
2025-10-29 15:36:43 +00:00
Doug Lea
ff24088c86 8359919: Minor java.util.concurrent doc improvements
8187775: AtomicReferenceFieldUpdater does not support static fields
8254060: SubmissionPublisher close hangs if a publication is pending
8210149: Example in JavaDoc for java.util.concurrent.Flow violates Reactive Streams spec
8199501: Improve documentation of CompletableFuture, CompletionStage
8233050: CompletableFuture `whenComplete` and `thenApply` change exceptional result
8210312: JavaDoc example in SubmissionPublisher will potentially crash
8292365: CompletableFuture and CompletionStage should document Memory Model guarantees
8356304: Define "enabled" in ScheduledExecutorService
8353155: FutureTask#run(): doc implies synchronous, implementation is async
8186959: Clarify that Executors.newScheduledThreadPool() is fixed-size
8190889: TimeUnit.wait should document IllegalMonitorStateException
6351533: CyclicBarrier reset() should return the number of awaiters
6317534: CyclicBarrier should have a cancel() method
8195628: Documentation for lock(), trylock(), lockInterruptibly​()  of ReentrantReadWriteLock.WriteLock needs to be corrected
8333172: Document a recommendation to use VarHandles instead of java.util.concurrent.atomic.*FieldUpdater
6374942: Improve thread safety of collection .equals() methods
7176957: ExecutorService submit method javaDoc enhancement
8172177: Improve documentation for CompletionException handling
6714849: ReentrantReadWriteLock: Abnormal behavior in non-fair mode
6625724: Allow ReentrantReadWriteLock to not track per-thread read holds
6526284: Improve AbstractExecutorService javadoc
8137156: Javadoc for Future is misleading with respect to cancellation
6663476: FutureTask.get() may return null if set() is not called from run()
8311131: ConcurrentHashMap.forEachKey parallelismThreshold description could be clearer

Reviewed-by: alanb
2025-06-26 12:04:42 +00:00
Doug Lea
2c034f57d6 8357146: ForkJoinPool:schedule(*) does not throw RejectedExecutionException when pool is shutdown
Reviewed-by: alanb
2025-05-26 22:37:42 +00:00
Roger Riggs
af5db51306 8353641: Deprecate core library permission classes for removal
Reviewed-by: mullan, iris
2025-04-10 19:19:31 +00:00
Viktor Klang
402103331b 8353659: SubmissionPublisherTest::testCap1Submit times out
Reviewed-by: dl, alanb
2025-04-07 15:03:30 +00:00
Doug Lea
8b0602dbed 8319447: Improve performance of delayed task handling
Reviewed-by: vklang, alanb
2025-03-31 19:23:59 +00:00
Dmitry Chuyko
fed34e46b8 8351933: Inaccurate masking of TC subfield decrement in ForkJoinPool
Reviewed-by: dl, alanb, liach
2025-03-19 11:35:26 +00:00
Doug Lea
92e9ac6dc7 8345294: test/jdk/java/lang/Thread/virtual/RetryMonitorEnterWhenPinned.java timeout with JTREG_TEST_THREAD_FACTORY=Virtual
Reviewed-by: alanb
2024-12-05 12:15:58 +00:00
Doug Lea
3e509c8bd1 8344773: SM cleanup in ForkJoinPool
Reviewed-by: alanb
2024-11-26 11:44:29 +00:00
Doug Lea
18df6fd5ba 8336707: Contention of ForkJoinPool grows when stealing works
Reviewed-by: vklang
2024-11-21 11:50:46 +00:00
Sean Mullan
db85090553 8338411: Implement JEP 486: Permanently Disable the Security Manager
Co-authored-by: Sean Mullan <mullan@openjdk.org>
Co-authored-by: Alan Bateman <alanb@openjdk.org>
Co-authored-by: Weijun Wang <weijun@openjdk.org>
Co-authored-by: Aleksei Efimov <aefimov@openjdk.org>
Co-authored-by: Brian Burkhalter <bpb@openjdk.org>
Co-authored-by: Daniel Fuchs <dfuchs@openjdk.org>
Co-authored-by: Harshitha Onkar <honkar@openjdk.org>
Co-authored-by: Joe Wang <joehw@openjdk.org>
Co-authored-by: Jorn Vernee <jvernee@openjdk.org>
Co-authored-by: Justin Lu <jlu@openjdk.org>
Co-authored-by: Kevin Walls <kevinw@openjdk.org>
Co-authored-by: Lance Andersen <lancea@openjdk.org>
Co-authored-by: Naoto Sato <naoto@openjdk.org>
Co-authored-by: Roger Riggs <rriggs@openjdk.org>
Co-authored-by: Brent Christian <bchristi@openjdk.org>
Co-authored-by: Stuart Marks <smarks@openjdk.org>
Co-authored-by: Ian Graves <igraves@openjdk.org>
Co-authored-by: Phil Race <prr@openjdk.org>
Co-authored-by: Erik Gahlin <egahlin@openjdk.org>
Co-authored-by: Jaikiran Pai <jpai@openjdk.org>
Reviewed-by: kevinw, aivanov, rriggs, lancea, coffeys, dfuchs, ihse, erikj, cjplummer, coleenp, naoto, mchung, prr, weijun, joehw, azvegint, psadhukhan, bchristi, sundar, attila
2024-11-12 17:16:15 +00:00
Alan Bateman
dee0982c60 8343132: Remove temporary transitions from Virtual thread implementation
Reviewed-by: dholmes, sspitsyn, pchilanomate
2024-10-31 08:53:19 +00:00
Pavel Rappo
07352c6744 8338398: Trivially fix grammar and typos
Reviewed-by: aivanov
2024-08-16 14:06:10 +00:00
Doug Lea
789f704d9a 8322732: ForkJoinPool may underutilize cores in async mode
8327854: Test java/util/stream/test/org/openjdk/tests/java/util/stream/WhileOpStatefulTest.java failed with RuntimeException

Reviewed-by: alanb
2024-06-05 13:02:15 +00:00
Viktor Klang
28216aa971 8328366: Thread.setContextClassloader from thread in FJP commonPool task no longer works after JDK-8327501
Reviewed-by: mchung, alanb
2024-04-04 18:32:59 +00:00
Viktor Klang
53c4714aab 8327501: Common ForkJoinPool prevents class unloading in some cases
Reviewed-by: alanb
2024-03-07 09:44:35 +00:00
Doug Lea
cc25d8b12b 8319662: ForkJoinPool trims worker threads too slowly
8319498: ForkJoinPool.invoke(ForkJoinTask) does not specify behavior when task throws checked exception

Reviewed-by: alanb
2023-12-06 16:12:59 +00:00
Doug Lea
667cca9d7a 8288899: java/util/concurrent/ExecutorService/CloseTest.java failed with "InterruptedException: sleep interrupted"
Reviewed-by: alanb
2023-10-27 10:08:59 +00:00
Tagir F. Valeev
3f3a1f534b 8302815: Use new Math.clamp method in core libraries
Reviewed-by: alanb
2023-02-22 09:51:14 +00:00
Alan Bateman
19d849884b 8297495: j.u.concurrent updates for JDK 20
Reviewed-by: jpai
2022-12-05 15:20:16 +00:00
Alan Bateman
cd776093c7 8294278: ForkJoinPool.getAndAddPoolIds should use Unsafe.staticFieldBase
Reviewed-by: burban, chegar, martin
2022-12-01 10:40:36 +00:00
Doug Lea
bc12e9553d 8292969: Bad Thread Utilization in ForkJoinPool
Reviewed-by: shade, alanb
2022-09-27 10:50:18 +00:00