Size: a a a

Kotlin Community

2020 October 23

AN

Alexander Nozik in Kotlin Community
Yuri Shmakov
Есть вопрос по coroutine scope. Много гуглил, но так и не нашел ответа.

Есть скоуп фичи. Есть скоуп под-фичей. Мне надо:
1. Если закрываю скоуп фичи, чтобы закрывались все скопуы под-фичей
2. Если закрываю скоуп под-фичи, чтобы не закрывалсяс скоуп фичи

Уже голову и руки поломал в поисках решения, но ничего не получается. Как-будто это не возможно
Закрытие дочернего скоупа без ошибки не ведет к закрытию родительского, так что все должно работать прям из коробки
источник

YS

Yuri Shmakov in Kotlin Community
Alexander Nozik
Закрытие дочернего скоупа без ошибки не ведет к закрытию родительского, так что все должно работать прям из коробки
А как можно закрыть без ошибки? Я пробовал делать вот так:
val mainScope = CoroutineScope(Dispatchers.Default)
val childScope = CoroutineScope(Job() + mainScope.coroutineContext)
...
childScope.cancel()
источник

AN

Alexander Nozik in Kotlin Community
Yuri Shmakov
А как можно закрыть без ошибки? Я пробовал делать вот так:
val mainScope = CoroutineScope(Dispatchers.Default)
val childScope = CoroutineScope(Job() + mainScope.coroutineContext)
...
childScope.cancel()
У вас неправильно создается чайлд, должно быть . CoroutineScope(mainScope.coroutineContext + Job(mainScope.coroutineContext[Job]))
источник

AN

Alexander Nozik in Kotlin Community
Я кстати так и не понял, почему нет чего-то готового под ручную сборку дочерних скоупов. Вроде довольно частая штука. @relizarov ?
источник

YS

Yuri Shmakov in Kotlin Community
Alexander Nozik
У вас неправильно создается чайлд, должно быть . CoroutineScope(mainScope.coroutineContext + Job(mainScope.coroutineContext[Job]))
🧡  спасибо, помогло! пойду пытаться понять, в чем суть =)
источник

AN

Alexander Nozik in Kotlin Community
Yuri Shmakov
🧡  спасибо, помогло! пойду пытаться понять, в чем суть =)
Суть в том, что плюс в корутинконтекстах некоммутативен. Короче порядок важен
источник

AN

Alexander Nozik in Kotlin Community
Вторая часть важна, потому что вам надо джобу унаследовать, а вы свободно висящуюю создаете
источник

YS

Yuri Shmakov in Kotlin Community
Унаследовать надо для того, чтобы получить от неё cancellation?
источник

AN

Alexander Nozik in Kotlin Community
Yuri Shmakov
Унаследовать надо для того, чтобы получить от неё cancellation?
да
источник

AN

Alexander Nozik in Kotlin Community
Чтобы сверху вниз отмена была.
источник

YS

Yuri Shmakov in Kotlin Community
Класс, спасибо! Это довольно частая задача у меня, но всегда как-то обходился. А тут совсем приперло. Но оказывается всё довольно просто )
источник

АZ

А - Z in Kotlin Community
Кто может рассказать свою историю изучения kotlin? Правда интересно, если вам не сложно:)
источник

IK

Iliya Kuznetsov in Kotlin Community
А - Z
Кто может рассказать свою историю изучения kotlin? Правда интересно, если вам не сложно:)
меня так напряг груви а в яву не хочется в обычную, поэтому котлин
источник

AN

Alexander Nozik in Kotlin Community
А - Z
Кто может рассказать свою историю изучения kotlin? Правда интересно, если вам не сложно:)
в смысле?
источник

QH

Quantum Harmonizer in Kotlin Community
А - Z
Кто может рассказать свою историю изучения kotlin? Правда интересно, если вам не сложно:)
коллега: смари какой язык
я: потыкал
тоже я: прочитал доку
снова я: нашёл работу, где его можно применить
снова я: запилил пару проектов на гитхабе

хз, что тут рассказывать)
источник

IP

Iaroslav Postovalov in Kotlin Community
А - Z
Кто может рассказать свою историю изучения kotlin? Правда интересно, если вам не сложно:)
друг писал проект на котлине. мне зашел язык, я написал пару проектов, постоянно чекая доку и гугля что-то на SO :/
источник

AN

Alexander Nozik in Kotlin Community
А - Z
Кто может рассказать свою историю изучения kotlin? Правда интересно, если вам не сложно:)
Ну я писал на жаве, мне нравилось. Писал на груви. Нравилось, но понял, что жаву им не заменить.  Потом начал ползать вокруг и смотрел на разные диковины вроде скалы, цейлона и XTend. А потом увиде TornadoFX. Ну и все.
источник

i

i_vovolk in Kotlin Community
А - Z
Кто может рассказать свою историю изучения kotlin? Правда интересно, если вам не сложно:)
Увидел твит от хабра про пост от издательства Питер, что они Head first Kotlin перевели. Безотлагательно заказл. И понеслось. Дока, курсы, чатик и все такое
источник

IP

Iaroslav Postovalov in Kotlin Community
Alexander Nozik
Ну я писал на жаве, мне нравилось. Писал на груви. Нравилось, но понял, что жаву им не заменить.  Потом начал ползать вокруг и смотрел на разные диковины вроде скалы, цейлона и XTend. А потом увиде TornadoFX. Ну и все.
оо, цейлон - это тема. я невероятно жалею, что он не взлетел
источник

АЕ

Алексей Ершов... in Kotlin Community
А - Z
Кто может рассказать свою историю изучения kotlin? Правда интересно, если вам не сложно:)
Пишу такой на джаве, зеленый джун. Вижу где-то какой-то язык скоро выйдет. Потыкал, написал курсовую, огонь! И давай двигать в компании где работал. Изучал, рассказывал про него, написал первый реальный проект, а там уже и Гугл его принял, и все дела.
источник