Size: a a a

Kotlin Community

2020 November 14

AN

Alexander Nozik in Kotlin Community
Вообще это на первой странице доки по корутинам довольно большими буквами написано
источник

с#

саша сок #KotlinGang... in Kotlin Community
и надеяться, что это всё будет только через корутины параллелиться? или в потоках оно тоже фризит?
источник

AN

Alexander Nozik in Kotlin Community
саша сок #KotlinGang
и надеяться, что это всё будет только через корутины параллелиться? или в потоках оно тоже фризит?
Ну так если доступ к изменяемому состоянию только через корутины, то все через корутины
источник

с#

саша сок #KotlinGang... in Kotlin Community
Alexander Nozik
Ну так если доступ к изменяемому состоянию только через корутины, то все через корутины
а вот в андроиде с IO диспатчерами норм? извините за такие глупые наверное вопросы
источник

AN

Alexander Nozik in Kotlin Community
Для того, чтобы мутекс использовать, должен быть suspend fun sava(). Если без этого, то только через атомики
источник

AN

Alexander Nozik in Kotlin Community
саша сок #KotlinGang
а вот в андроиде с IO диспатчерами норм? извините за такие глупые наверное вопросы
Что такое норм?
источник

с#

саша сок #KotlinGang... in Kotlin Community
ну вообще наверное всё должно быть хорошо, потому что там корутины. но они параллелятся через потоки вроде
источник

AN

Alexander Nozik in Kotlin Community
саша сок #KotlinGang
ну вообще наверное всё должно быть хорошо, потому что там корутины. но они параллелятся через потоки вроде
При чем тут потоки? Корутины полностью абстрагируют потоки. Если вы в корутинах делаете, то про потоки думать не надо
источник

с#

саша сок #KotlinGang... in Kotlin Community
понял, спасибо
источник

LS

Lev Shagalov in Kotlin Community
Alexander Nozik
fun <T> funWithList(list: List<T>, serializer: KSerializer<T>){
 ...
 Json.encodeToString(ListSerializer(serializer), list)
}
Не, там разные реализации SomeInterface будут
источник

AN

Alexander Nozik in Kotlin Community
Lev Shagalov
Не, там разные реализации SomeInterface будут
В смысле разные функции?
источник

LS

Lev Shagalov in Kotlin Community
Alexander Nozik
В смысле разные функции?
Разные классы интерфейса SomeInterface
источник

AN

Alexander Nozik in Kotlin Community
Lev Shagalov
Разные классы интерфейса SomeInterface
Не понял. В общем, сериализатор можно передавать явно.
источник

LS

Lev Shagalov in Kotlin Community
Alexander Nozik
Не понял. В общем, сериализатор можно передавать явно.
class A: SomeInterface
class B: SomeInterface
val list = listOf(A(), B())

fun ser (items: Iterable<SomeInterface>) ....
источник

AN

Alexander Nozik in Kotlin Community
Lev Shagalov
class A: SomeInterface
class B: SomeInterface
val list = listOf(A(), B())

fun ser (items: Iterable<SomeInterface>) ....
Тогда через serializersModule только
источник

LS

Lev Shagalov in Kotlin Community
Ок, а если функция будет
fun ser (item: SomeInterface)
Без добавления аргументов я могу это нормально сериализовать?
Просто для этого, особого для меня, случая я могу серализовать итемы по одному в json а потом добавить в jsonArray.
источник

AN

Alexander Nozik in Kotlin Community
Lev Shagalov
Ок, а если функция будет
fun ser (item: SomeInterface)
Без добавления аргументов я могу это нормально сериализовать?
Просто для этого, особого для меня, случая я могу серализовать итемы по одному в json а потом добавить в jsonArray.
Да вроде да. Но вообще если модуль есть, то и лист сразу можно
источник

LS

Lev Shagalov in Kotlin Community
Alexander Nozik
Да вроде да. Но вообще если модуль есть, то и лист сразу можно
А как достать в таком случае сериализатор?
источник

AN

Alexander Nozik in Kotlin Community
Ты можешь вешать serializable на интерфейс вроде
источник

AN

Alexander Nozik in Kotlin Community
Или можно прямо из модуля
источник