-
Bug
-
Resolution: Fixed
-
P2
-
7
-
b112
-
generic
-
generic
-
Verified
1. Disable dynamic reconfiguration of ForkJoinPool
and provide fewer configuration parameters. The main rationale
is that we know of no compelling use cases where these are
helpful and several where they are harmful.
This entails removing methods setParallelism,
setMaintainsParallelism, setMaximumPoolSize, etc.
The only on-construction parameters left are parallelism,
factory, uncaughtExceptionHandler, and async mode. This also
entails removing "maintainParallelism" arguments from a
few other methods.
2. Recast ForkJoinPool.invoke to be equivalent to ForkJoinTask.invoke
when issued by a task in the current pool. While these methods
must be distinct (because the former can invoke a task in a
different pool), the semantic differences are otherwise subtle
and error-prone. Also, improve documentation about the various
execute vs submit vs invoke vs fork methods.
3. Remove ForkJoinTask.helpJoin() and variants. Instead, plain join()
conservatively, safely mixes helping- vs spare- based joins internally.
For more discussion on this see the core-libs-dev and concurrency-interest list archives:
http://mail.openjdk.java.net/pipermail/core-libs-dev/2010-August/004695.html
http://cs.oswego.edu/pipermail/concurrency-interest/2010-June/007243.html
and provide fewer configuration parameters. The main rationale
is that we know of no compelling use cases where these are
helpful and several where they are harmful.
This entails removing methods setParallelism,
setMaintainsParallelism, setMaximumPoolSize, etc.
The only on-construction parameters left are parallelism,
factory, uncaughtExceptionHandler, and async mode. This also
entails removing "maintainParallelism" arguments from a
few other methods.
2. Recast ForkJoinPool.invoke to be equivalent to ForkJoinTask.invoke
when issued by a task in the current pool. While these methods
must be distinct (because the former can invoke a task in a
different pool), the semantic differences are otherwise subtle
and error-prone. Also, improve documentation about the various
execute vs submit vs invoke vs fork methods.
3. Remove ForkJoinTask.helpJoin() and variants. Instead, plain join()
conservatively, safely mixes helping- vs spare- based joins internally.
For more discussion on this see the core-libs-dev and concurrency-interest list archives:
http://mail.openjdk.java.net/pipermail/core-libs-dev/2010-August/004695.html
http://cs.oswego.edu/pipermail/concurrency-interest/2010-June/007243.html
- duplicates
-
JDK-6913442 java.util.concurrent.ForkJoinTask serialized form refers to package-private constants
-
- Closed
-
- relates to
-
JDK-6992270 TEST_BUG: java/util/concurrent/forkjoin/Integrate.java is not compilable by latest jdk 7
-
- Closed
-
-
JDK-6865582 jsr166y - jsr166 maintenance update
-
- Resolved
-