RFR: 8333103: Re-examine the console provider loading

Chen Liang liach at openjdk.org
Wed May 29 21:30:02 UTC 2024


On Wed, 29 May 2024 19:51:36 GMT, Naoto Sato <naoto at openjdk.org> wrote:

> There is an initialization code in `Console` class that searches for the Console implementations. Refactoring the init code not to use lambda/stream would reduce the (initial) number of loaded classes by about 100 for java.base implementations. This would become relevant when the java.io.IO (JEP 477) uses Console as the underlying framework.

src/java.base/share/classes/java/io/Console.java line 673:

> 671:                                 return new ProxyingConsole(jc);
> 672:                             }
> 673:                             break;

Suggestion:


The original `findAny` is only after `filter(Objects::nonNull)` meaning we don't return `null` on a null `jcp.console` result.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/19467#discussion_r1619495420


More information about the core-libs-dev mailing list