Java 8 in a JEE Environment

Brian Goetz brian.goetz at
Tue Apr 16 08:05:53 PDT 2013

These properties were decided on with the anticipated needs of EE (and 
similar frameworks) in mind, within the reality of what is practical 
without punishing all uses cases to provide some uses cases with finer 

We can't speak for the EE 8 EG.  It is for them to use these features to 
expose or disable access to the common pool.  We're working with them to 
help them understand the tradeoffs and identify candidate configurations.

On 4/16/2013 10:51 AM, Paul Benedict wrote:
> Thanks Brian. In regard to Michael's comment, are these the properties
> which the EG decided on for EE containers? I would like to know if F/J
> and Stream can be used directly in an EE container without circumventing
> any managed services.
> Paul
> On Tue, Apr 16, 2013 at 9:46 AM, Brian Goetz <brian.goetz at
> <mailto:brian.goetz at>> wrote:
>         Paul, what are your thoughts of creating an SPI that allow
>         implementations
>         to hook into F/J? I am thinking that the SE API could be used if
>         an EE
>         container had a way of participating in the API to create threads.
>     That's already there.
>      From ForkJoinPool doc:
>       * <p>The common pool is by default constructed with default
>       * parameters, but these may be controlled by setting three
>       * {@linkplain System#getProperty system properties}:
>       * <ul>
>       * <li>{@code java.util.concurrent.__ForkJoinPool.common.__parallelism}
>       * - the parallelism level, a non-negative integer
>       * <li>{@code
>     java.util.concurrent.__ForkJoinPool.common.__threadFactory}
>       * - the class name of a {@link ForkJoinWorkerThreadFactory}
>       * <li>{@code
>     java.util.concurrent.__ForkJoinPool.common.__exceptionHandler}
>       * - the class name of a {@link UncaughtExceptionHandler}
>       * </ul>
>     Containers can control the pool size, thread factory, and exception
>     handler for the common pool, which is used by parallel stream
>     implementations.

More information about the lambda-dev mailing list