Виртуальные потоки Java столкнулись с проблемой распиновки

Виртуальные потоки Java, появившиеся в JDK 21 в сентябре 2023 года, чтобы упростить написание и поддержку параллельных приложений, страдают от проблемы "пиннинга", возникающей при использовании синхронизированных методов или синхронизированных операторов.

На этой неделе Oracle подробно описала проблему "прикрепления" виртуальных потоков на сайте Inside Java. Два наиболее распространенных случая включают в себя парковку виртуального потока в синхронизированном методе и блокировку виртуального потока при входе в синхронизированный метод, поскольку связанный с объектом монитор находится в другом потоке. В обоих случаях несущий или родной поток не освобождается для выполнения другой работы. Блокировка виртуальных потоков может повлиять на производительность и масштабируемость и потенциально привести к голоданию и тупику, говорится в сообщении в блоге.

Новые сборки раннего доступа для Java Project Loom вносят изменения в реализацию объектного монитора, которые не приводят к фиксации в этих двух распространенных случаях. Команда Loom просит пользователей помочь проверить надежность и производительность обновленных объектных мониторов в коде, использующем виртуальные потоки, и в библиотеках с высокой степенью синхронизации. Чтобы сообщить о проблеме, разработчикам следует воспользоваться списком рассылки Loom.

Project Loom - это проект OpenJDK, в рамках которого разрабатываются функции и API JVM для поддержки облегченного параллелизма. По словам Oracle, виртуальные потоки, представленные в JDK 19 и JDK 20, представляют собой облегченные потоки, которые значительно сокращают усилия по написанию, поддержке и наблюдению за высокопроизводительными параллельными приложениями. По словам Oracle, несмотря на проблему с пиннингом, виртуальные потоки были очень хорошо приняты сообществом и экосистемой Java.

Виртуальные потоки Java столкнулись с проблемой распиновки
Понравилась новость? Тогда не забудь оставить свой комментарий.
А так же, добавь наш сайт в закладки (нажми Ctrl+D), не теряй нас.
23 февраля 2024 г.
169

Комментарии

Оставить комментарий:
* отправляя форму, я даю согласие на обработку персональных данных

Читайте еще

Продолжаем добавлять языки программирования для Вас.
Впереди много интересного!

Только свежие новости программирования и технологий каждый день.

Свежие посты