Zmiana zachowania podprogramu ładującego pulę klas wspólnych ForkJoinPool

W wersji Java 8 i wcześniejszych podprogram ładujący klasy dla puli ForkJoinPool mógł być dziedziczony z wątku nadrzędnego, który wywołał ForkJoinPool. Dziedziczenie podprogramu ładującego klasy mogło prowadzić do potencjalnych problemów z przeciekiem pamięci. Począwszy od języka Java 9 podprogram ładujący klasy ForkJoinPool nie jest już dziedziczony z wątku wywołującego. Jeśli aplikacja działa w środowisku wielowątkowym, można odnotować różnice w zachowaniu związane z propagacją podprogramu ładującego klasy kontekstu wątku.

Ta reguła oznacza każdą aplikację tylko raz. Reguła powoduje oznaczenie aplikacji, które wywołują dowolną z następujących metod (dotyczy to także wywołań podklas):

Uwaga: Ta zmiana działania ma zastosowanie tylko wtedy, gdy nie została jeszcze zorganizowana propagacja podprogramu ładującego klasy kontekstu wątku, na przykład jako propagacja kontekstu MicroProfile, współbieżność Jakarta/Java EE lub inne metody specyficzne dla aplikacji.

Więcej informacji na temat zmian w środowisku Java SE 9 można znaleźć w publikacji Java 9 release notes (Uwagi do wydania środowiska Java 9).