1 подписчик
Интересная презентация Project Loom от Tomasz Nurkiewicz (CTO at DevSkiller, Java Champion). Томас разложил все по полочкам, рассказав:
- Что такое Continuation и логику работу виртуальных потоков
- Что такой внутренний (JVM) Scheduler
- Чему служит structured concurrency
Отдельное спасибо за проблемы, которые подсветил Томас в своей перзентации:
- Свое состояние и информацию о стеке виртуальные потоки хранят в Heap, а это значит, чем более "глубокий" у вас стек и чем больше вирутальных потоков, тем бОльший объем данных вы храните в Heap, как результат больше и нагрузка на сборщик мусора.
- В случае CPU intensive виртуальных потоков JVM Scheduler не способен обеспечить "честный" доступ к ресурсам CPU, что приводит к "голоданию" виртуальных потоков.
- Отсутствуют библиотеки позволяющие управлять back pressure и throttling для виртуальных потоков
Пожалуй это одна из лучших презентаций по виртуальным потокам за последнее время, настоятельно рекомендую
Около минуты
16 апреля 2024