169 похожих чатов

Что лучше использовать вместо inputStream.read и outputStream.write в корутинах, чтобы

избежать блокирования потока?

9 ответов

10 просмотров

Java.nio, но под него над довольно сильно логику менять

Alexander Nozik
Java.nio, но под него над довольно сильно логику м...

по одному байтику писать / читать в flow не вариант ?

Alexander Nozik
Где оно неблокирующее?

нет ну оно блокирущее, но там блокируется только на один байт flow { stream.readByte() }.toList() но я не спорю, что это какая-то фигня, мне просто интересно.

Aλex Sokol
нет ну оно блокирущее, но там блокируется только н...

Короче, по одному байту читать - самый худший вариант

Смотря сколько у вас этого самого IO. Если один-два дескриптора, то nio - оверкилл, достаточно в Dispatchers.IO вынести ввод-вывод. Если много - то nio/nio2

Michael-Mazaev Автор вопроса
Kirill Gamazkov
Смотря сколько у вас этого самого IO. Если один-дв...

Вполне возможно оверкилл Но мне интересно разобраться, чтобы знать что к чему в будущем

Michael Mazaev
Вполне возможно оверкилл Но мне интересно разобрат...

Примерно так: nio на коллбэках. JVM под капотом держит небольшой тредпул, который возится с ожиданием файлов/сети и дёргает ваши коллбэки. nio2 - через polling, вы сами рулите тредами, которые подёргивают JVM за селекторы на тему "ну чо там, прочиталося уже? а теперь? а щас? а ещё нет?" - по идее лучше ложится на корутины, но в рукопашную это всё писать, наверное, не стоит

Похожие вопросы

Обсуждают сегодня

коллеги, добрый вечер! А никто не знает как модальная форма может себя закрыть? Ну допустим модальная форма определила, что смысла ей работать нет и хочет вернуть modalResult...
Михаил
83
А если изначально бот работал так : есть сайт онлайн школы. У каждого ученика свой кабинет. Где он авторизуется по своим данным. И уже в кабинете, на самом сайте делает оплату...
Денис 💡 Фрилансер
13
Добрый день Хочу начать обучение языку, не являюсь представителем it, буду благодарна за помощь, совсем пока не понимаю ничего) Подскажите, пожалуйста, где можно начать первы...
Sara Lala
19
А что ты вообще делаешь ?
Yesgoter
13
средствами IBX как-то можно выполнить запрос insert ... returning?
Igor
31
На работе пишем распределенное приложение, у которого сотни, если не тысячи настроек. Конфиги написаны на xml, расположены на разных хостах и должны быть согласованы друг с др...
Aleksandr Druzhinin
5
Всем привет 🙂 Какая-то непонятная проблема у меня с видео, раньше такого не было. Загружаю видео с гугл диска именно в видео mp4 и меняю ссылку как положено вот она: https://d...
Ксюша|Верстка на Тильде|Дизайн 🦥
6
Hi there everyone Is there anyone who have not started hamster bot yet? I need only one, I'll be glad if you do this for me DM if you haven't yet
Mehrshad
53
А как старый хаскел с новым стыковать ? потому как тут работает https://play.haskell.org/saved/C3xpMzcd, а вот тут https://stepik.org/lesson/7602/step/9?unit=1473 нет ошибка C...
Fedor
131
А какие у этого try практические плюсы перед eval?
Oleg Volkov
41
Карта сайта