Re: One more round… Re: RFA 8056248: Improve ForkJoin thread throttling
Chris Hegarty
chris.hegarty at oracle.com
Thu Sep 25 22:19:06 UTC 2014
On 25 Sep 2014, at 14:55, Paul Sandoz <paul.sandoz at oracle.com> wrote:
> Hi Sean,
>
> On Sep 25, 2014, at 11:47 AM, Seán Coffey <sean.coffey at oracle.com> wrote:
>
>> Paul,
>>
>> After further conversations with Joe Darcy it looks like the safest thing to do here is remove the new system property code completely for the jdk8u backport.
>>
>> Consider this request approved if you can pull out the code. Please have someone review the changes also.
>>
>
> Thanks, below is the patch (on top of the change set pushed to 9) removing the system property.
Reviewed.
-Chris.
> Paul.
>
> diff -r ac4184297775 src/share/classes/java/util/concurrent/ForkJoinPool.java
> --- a/src/share/classes/java/util/concurrent/ForkJoinPool.java Fri Sep 05 10:54:28 2014 +0200
> +++ b/src/share/classes/java/util/concurrent/ForkJoinPool.java Thu Sep 25 14:52:44 2014 -0700
> @@ -143,9 +143,6 @@
> * - the class name of a {@link ForkJoinWorkerThreadFactory}
> * <li>{@code java.util.concurrent.ForkJoinPool.common.exceptionHandler}
> * - the class name of a {@link UncaughtExceptionHandler}
> - * <li>{@code java.util.concurrent.ForkJoinPool.common.maximumSpares}
> - * - the maximum number of allowed extra threads to maintain target
> - * parallelism (default 256).
> * </ul>
> * If a {@link SecurityManager} is present and no factory is
> * specified, then the default pool uses a factory supplying
> @@ -1316,12 +1313,10 @@
>
> /**
> * The initial value for commonMaxSpares during static
> - * initialization unless overridden using System property
> - * "java.util.concurrent.ForkJoinPool.common.maximumSpares". The
> - * default value is far in excess of normal requirements, but also
> - * far short of MAX_CAP and typical OS thread limits, so allows
> - * JVMs to catch misuse/abuse before running out of resources
> - * needed to do so.
> + * initialization. The value is far in excess of normal
> + * requirements, but also far short of MAX_CAP and typical
> + * OS thread limits, so allows JVMs to catch misuse/abuse
> + * before running out of resources needed to do so.
> */
> private static final int DEFAULT_COMMON_MAX_SPARES = 256;
>
> @@ -3417,8 +3412,6 @@
> ("java.util.concurrent.ForkJoinPool.common.threadFactory");
> String hp = System.getProperty
> ("java.util.concurrent.ForkJoinPool.common.exceptionHandler");
> - String mp = System.getProperty
> - ("java.util.concurrent.ForkJoinPool.common.maximumSpares");
> if (pp != null)
> parallelism = Integer.parseInt(pp);
> if (fp != null)
> @@ -3427,8 +3420,6 @@
> if (hp != null)
> handler = ((UncaughtExceptionHandler)ClassLoader.
> getSystemClassLoader().loadClass(hp).newInstance());
> - if (mp != null)
> - commonMaxSpares = Integer.parseInt(mp);
> } catch (Exception ignore) {
> }
> if (factory == null) {
More information about the jdk8u-dev
mailing list