Size: a a a

2021 February 06

md

mm dd in pro.jvm
Хочу изучать Андроид разработку, посоветуйте курс по Kotlin
источник

md

mm dd in pro.jvm
Привет)
источник

ch

central hardware in pro.jvm
mm dd
Хочу изучать Андроид разработку, посоветуйте курс по Kotlin
источник

D𝔇

Dmitry 𝔇𝔪𝔦𝔱𝔯𝔶... in pro.jvm
mm dd
Хочу изучать Андроид разработку, посоветуйте курс по Kotlin
На udacity курсы от гугл. Вроде ещё на какой-то платформе они есть
источник

NK

Nurislam Kalenov in pro.jvm
Всем привет!
Кто работал с асинхронными запросами, а точнее асинхронной обработкой запроса в коде? Допустим инсерт в бд.

Вот что я не могу понять:

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

Какой механизм заставляет клиента ожидать ответ? За это то же какой то поток отвечает?
источник

DZ

Dmitry Zvorygin in pro.jvm
... сетевой
источник

NK

Nurislam Kalenov in pro.jvm
Dmitry Zvorygin
... сетевой
🤔
источник

D𝔇

Dmitry 𝔇𝔪𝔦𝔱𝔯𝔶... in pro.jvm
Nurislam Kalenov
Всем привет!
Кто работал с асинхронными запросами, а точнее асинхронной обработкой запроса в коде? Допустим инсерт в бд.

Вот что я не могу понять:

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

Какой механизм заставляет клиента ожидать ответ? За это то же какой то поток отвечает?
Сначала нужно понять о каком протоколе мы говорим
источник

NK

Nurislam Kalenov in pro.jvm
Dmitry 𝔇𝔪𝔦𝔱𝔯𝔶
Сначала нужно понять о каком протоколе мы говорим
HTTP
источник

D𝔇

Dmitry 𝔇𝔪𝔦𝔱𝔯𝔶... in pro.jvm
Ну он синхронный изначально. Клиент шлёт реквест и ждёт респонс
источник

AE

Anton Egorov in pro.jvm
Nurislam Kalenov
Всем привет!
Кто работал с асинхронными запросами, а точнее асинхронной обработкой запроса в коде? Допустим инсерт в бд.

Вот что я не могу понять:

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

Какой механизм заставляет клиента ожидать ответ? За это то же какой то поток отвечает?
Клиента никто не заставляет ждать ответа. Клиент получает future который наполнится ответом позже. Если клиент хочет ждать ответ, то он может заблокироваться на get()
источник

DZ

Dmitry Zvorygin in pro.jvm
Я так понял что вопрос был скорее про удалённого клиета, который ждёт ответа из сокета. Я бы посоветовал @javastart - видимо автор путает сетевые потоки(сокеты) с потоками операционной системы
источник

IA

Igor A in pro.jvm
Igor A
V1 или V2, юзаете ли optonal везде даже если 1 параметр?
Анонимный опрос
0%
V1
0%
V2
Проголосовало: 45
источник

NK

Nurislam Kalenov in pro.jvm
Dmitry Zvorygin
Я так понял что вопрос был скорее про удалённого клиета, который ждёт ответа из сокета. Я бы посоветовал @javastart - видимо автор путает сетевые потоки(сокеты) с потоками операционной системы
Да, думаю у меня не большой пробел в этой области) спасибо
источник

NG

Nikita Gryzlov in pro.jvm
опшионал сам по себе я считаю благом. но код в v1 - это вырвиглаз какой-то. уже две вложенных друг в друга простые лямбды должны заставить задуматься, а тут такое.
источник

IA

Igor A in pro.jvm
Nikita Gryzlov
опшионал сам по себе я считаю благом. но код в v1 - это вырвиглаз какой-то. уже две вложенных друг в друга простые лямбды должны заставить задуматься, а тут такое.
О ну хоть ктото думает как я
источник

PI

Pavel Ivanovsky in pro.jvm
Nurislam Kalenov
Всем привет!
Кто работал с асинхронными запросами, а точнее асинхронной обработкой запроса в коде? Допустим инсерт в бд.

Вот что я не могу понять:

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

Какой механизм заставляет клиента ожидать ответ? За это то же какой то поток отвечает?
Для этого нужен асинхронный протокол, типа http2, чтобы клиента не блокировать, а иначе будет как вы описали
источник

SU

Stanislav U. in pro.jvm
Igor A
О ну хоть ктото думает как я
Мне кажется комментарий был не о том, что Optional — плохо, а о том, что в V1 он использован максимально криво. Вот такая альтернатива выглядит всё-таки приятнее:
public List<Balance> loadV1dot1() {
   return executeWalletRequest()
           .map(jsonBody -> JsonUtils.toObj(jsonBody, BalanceResponse.class))
           .map(balanceResponse -> balanceResponse.getAmounts())
           .stream()
           .flatMap(Collection::stream)
           .map(amount -> buildUnifiedBalanceRow(balanceResponse, amount))
           .collect(Collectors.toList());
}
источник

IA

Igor A in pro.jvm
так нельзя  потому что ответа же может не быть?
и потому что логи


V2 тоже неоптимально написан мной. там можно было .stream.collect() и было бы еще изящнее

весь дискурс на тему можно ли логику .orElseReturn() итп пилить на optional или If(NULL) проще читать
источник

IA

Igor A in pro.jvm
я вырезал логи каюсь
источник