Size: a a a

2019 May 15

В

Вафель in Kotlin JVM
Alexey Otts
Самый простой вариант сейчас - это в конфиге выставить таймаут = 0, и в каждом нужном запросе рулить таймаутом корутины
Хм, спасибо. По крайней мере это уж точно лучше чем менять на ходу, как я сделал сейчас
источник

AO

Alexey Otts in Kotlin JVM
Ну твой текущий вариант получается вообще не thread safe
источник

(

( in Kotlin JVM
У меня кста тоже была проблема с лонгполлом в кторе. Реально, решил просто отдельным клиентом, даже не так плохо выглядело
источник

(

( in Kotlin JVM
Клиент для обычных запросов, клиент для лонгполлов, то же самое про скоупы
источник

В

Вафель in Kotlin JVM
Alexey Otts
Ну твой текущий вариант получается вообще не thread safe
Теоретически это не важно, т.к. 2 лонгпула одновременно запускать нельзя, но да, ничего хорошего
источник

В

Вафель in Kotlin JVM
(
Клиент для обычных запросов, клиент для лонгполлов, то же самое про скоупы
Ага, мы с вами это обсуждали N месяцев назад. У меня собственно единственная серьёзная проблема —  нужна возможность остановить lp и потом запустить с другим таймаутом
источник

AO

Alexey Otts in Kotlin JVM
Еще могу предложить сделать враппер над клиентом, в котором сделать дефолтный таймаут, а если надо его переопределить, то пихаешь в request.attributes нужное значение и переопределяешь.
IMHO будет гибче и меньше шансов где то промонать выставление таймаута
источник

В

Вафель in Kotlin JVM
Мне кажется если я полезу в кишки ктора, только запутаюсь и сломаю что-нибудь 😅 но тоже вариант
источник

AO

Alexey Otts in Kotlin JVM
Дак не надо лезть в кишки, там всего два метода - execute и close
источник

AO

Alexey Otts in Kotlin JVM
изи бризи
источник

AO

Alexey Otts in Kotlin JVM
А блет, там класс internal
источник

AO

Alexey Otts in Kotlin JVM
Любят некоторые либоделы усложнять жизнь юзеров
источник

В

Вафель in Kotlin JVM
где internal? HttpClient просто final
источник

AO

Alexey Otts in Kotlin JVM
источник

В

Вафель in Kotlin JVM
а, ну да
источник

AO

Alexey Otts in Kotlin JVM
Ну можно тогда фабрику обернуть 🤷‍♂️
источник

AO

Alexey Otts in Kotlin JVM
Короче чот всё очень не френдли
источник

AO

Alexey Otts in Kotlin JVM
А еще проще забить хер на их класс, сделать свой интерфейс с функцией execute а из неё уже звать настоящий клиент
источник

В

Вафель in Kotlin JVM
А как я timeout перепишу? Или в плане поставить timeout=0 и потом в своём врапере withTimeout { call {} }?
источник

AO

Alexey Otts in Kotlin JVM
Ага именно так
источник