Size: a a a

Kotlin Community

2020 November 13

TR

The Rebel in Kotlin Community
Ok
источник

TR

The Rebel in Kotlin Community
How to split strings on Kotlin
источник

PE

Pavel Erokhin in Kotlin Community
The Rebel
How to split strings on Kotlin
источник

AN

Alexander Nozik in Kotlin Community
The Rebel
How to split strings on Kotlin
источник

AN

Alexander Nozik in Kotlin Community
Черт, опоздал
источник

IP

Iaroslav Postovalov in Kotlin Community
Alexander Nozik
Черт, опоздал
так нельзя(
источник

AN

Alexander Nozik in Kotlin Community
Iaroslav Postovalov
так нельзя(
Можно. Читаем правила
источник

KG

Kirill Gamazkov in Kotlin Community
Дано: ReceiveChannel
Задача: подождать получение значения, но не более заданного интервала.
Я правильно понимаю, что это только через withTimeout(...) { channel.receive() } делается? Ни receive, ни poll не позволяют задать таймаут, а других методов вроде бы и нет
источник

IP

Iaroslav Postovalov in Kotlin Community
Kirill Gamazkov
Дано: ReceiveChannel
Задача: подождать получение значения, но не более заданного интервала.
Я правильно понимаю, что это только через withTimeout(...) { channel.receive() } делается? Ни receive, ни poll не позволяют задать таймаут, а других методов вроде бы и нет
источник

KG

Kirill Gamazkov in Kotlin Community
Ну так я про него и говорил, да
источник

IP

Iaroslav Postovalov in Kotlin Community
Kirill Gamazkov
Ну так я про него и говорил, да
ну да
источник

IP

Iaroslav Postovalov in Kotlin Community
а что не так-то. receive саспендит поток
источник

IP

Iaroslav Postovalov in Kotlin Community
а withtimeout может прерывать засаспенденные потоки
источник

KG

Kirill Gamazkov in Kotlin Community
Iaroslav Postovalov
а что не так-то. receive саспендит поток
Это будет работать как-то (насколько хорошо - пока не могу оценить, мало опыта с корутинами), но вдруг кто-то знает решение изящнее.
Потому что если притягивать за уши предыдущий опыт с тредами - я бы избегал накладных расходов и усложнение кода с интерраптом, и вместо этого у BlockingQueue вызывал poll с таймаутом
источник

IP

Iaroslav Postovalov in Kotlin Community
Kirill Gamazkov
Это будет работать как-то (насколько хорошо - пока не могу оценить, мало опыта с корутинами), но вдруг кто-то знает решение изящнее.
Потому что если притягивать за уши предыдущий опыт с тредами - я бы избегал накладных расходов и усложнение кода с интерраптом, и вместо этого у BlockingQueue вызывал poll с таймаутом
Job.cancel бесплатный
источник

KG

Kirill Gamazkov in Kotlin Community
Iaroslav Postovalov
Job.cancel бесплатный
Круть. А есть где почитать подробностей (если искать дольше трёх минут, то фиг с ним, не настолько надо)?
источник

IP

Iaroslav Postovalov in Kotlin Community
источник

I

Ivan in Kotlin Community
У меня есть бизнес-объект, который полностью идентичен Map<String, Any?>. Я использую базу данных (Room Android), для сохранения в которую нужно перед классом указать аннотацию @Entity, т.е. мне нужен класс, который бы описывал мой бизнес-объект.

Вопрос: как мне лучше его представить:
1) class MyObj: HashMap<String, Any?>()
2) data class MyObj (val map: Map<String, Any?>)
?
источник

IP

Iaroslav Postovalov in Kotlin Community
Ivan
У меня есть бизнес-объект, который полностью идентичен Map<String, Any?>. Я использую базу данных (Room Android), для сохранения в которую нужно перед классом указать аннотацию @Entity, т.е. мне нужен класс, который бы описывал мой бизнес-объект.

Вопрос: как мне лучше его представить:
1) class MyObj: HashMap<String, Any?>()
2) data class MyObj (val map: Map<String, Any?>)
?
inline class MyObj(val map: Map<String, Any?>)
источник

IP

Iaroslav Postovalov in Kotlin Community
если, конечно, рум поддерживает инлайн-классы
источник