Никита Коваль — Как устроены каналы в корутинах в Kotlin

Опубликовано: 05 Октябрь 2024
на канале: JPoint, Joker и JUG ru
2,957
67

Ближайшая конференция — Joker 2024, 9 октября (Online), 15–16 октября (Санкт-Петербург + трансляция).
Подробности и билеты: https://jrg.su/Ypf1HW
— —
. . . . Корутины + каналы — это перспективный способ писать работающий и понятный многопоточный код. Никита разрабатывает подкапотный механизм каналов, и это прекрасное комбо для интересного и полезного доклада.

В отличие от классического многопоточного программирования с манипулированием разделяемой памятью, корутины общаются друг с другом при помощи каналов. Канал позволяет одной корутине отправить элемент, а другой — получить его. При этом данные операции могут быть синхронизированы, и отправитель может ждать получателя и наоборот.

В этом докладе мы поговорим об устройстве каналов в различных языках и библиотеках, о разработанном в Kotlin алгоритме и узнаем, кто круче: Kotlin или Go.