Size: a a a

2019 October 26

E🎸

El Mariachi 🎸 in Kotlin Start
Denys
Не совсем понял. Если вы захватываете значение предидущей задачи - то все ок.
да, я сначала захватываю предыдущую задачу... а пока новая задача ждет завершения предыдущией - я снова перезахватываю, но получается не ту задачу которая выполняется, а ту которая была в ожидании
источник

D

Denys in Kotlin Start
El Mariachi 🎸
да, я сначала захватываю предыдущую задачу... а пока новая задача ждет завершения предыдущией - я снова перезахватываю, но получается не ту задачу которая выполняется, а ту которая была в ожидании
Так ведь и должно быть? :)
источник

E🎸

El Mariachi 🎸 in Kotlin Start
ну так а третья задача начинает радостно выполнятся, убив вторую задачу, хотя еще первая даже не завершилась
источник

E🎸

El Mariachi 🎸 in Kotlin Start
т.е. первая задача работает, вторая ожидает завершения первой, приходит третья, убивает вторую и идет работать (первая все это время тоже пашет)
источник

E🎸

El Mariachi 🎸 in Kotlin Start
короче нужен просто свой скоуп
источник

ВС

Виталий Сердюк in Kotlin Start
(foo::bar)(args)
объясните синтаксис ?
надо передать ссылку на функцию с параметрами
источник

D

Denys in Kotlin Start
El Mariachi 🎸
короче нужен просто свой скоуп
Я думаю, проблемма все же в

>  If the Job of the invoking coroutine is cancelled or completed when this suspending function is invoked or while it is suspended, this function throws CancellationException.
источник

E🎸

El Mariachi 🎸 in Kotlin Start
Denys
Я думаю, проблемма все же в

>  If the Job of the invoking coroutine is cancelled or completed when this suspending function is invoked or while it is suspended, this function throws CancellationException.
в finally оно попадает в любом случае
источник

D

Denys in Kotlin Start
Тоесть, если вызвать jobA.cancel() на jobA, которая завершилась или отменилась - вызов метода прекратит текущую корутину.
источник

E🎸

El Mariachi 🎸 in Kotlin Start
да, но у меня корутина не канцелябельная по сути....
источник

E🎸

El Mariachi 🎸 in Kotlin Start
корутина должна сама прекращать свою работу, проверяя свое состояние или переключая контекст
источник

E🎸

El Mariachi 🎸 in Kotlin Start
а у меня там тупо цикл, который пашет несколько секунд и не знает, что его тормознуть хотят
источник

E🎸

El Mariachi 🎸 in Kotlin Start
поэтому после cancel() я ожидал что join() будет блокировать дальнейшее выполнение, ожидая завершения этой долгой задачи... он и блокирует, пока не прибегает новая задача и говорит иди нахер, теперь я тут работать буду
источник

D

Denys in Kotlin Start
Наверное, я уже засыпаю и плохо соображаю. Но очередь не будет лишней, вероятно. 😅
источник

ВС

Виталий Сердюк in Kotlin Start
Как заставитьэто работать ? не пойму синтаксис
источник

D

Denys in Kotlin Start
Виталий Сердюк
(foo::bar)(args)
объясните синтаксис ?
надо передать ссылку на функцию с параметрами
Эквивалентно foo.bar(args)
источник

D

Denys in Kotlin Start
Виталий Сердюк
Как заставитьэто работать ? не пойму синтаксис
fun cre2(function: () -> Unit) {
   function()
}

cre2 { t2(true) }
источник

D

Denys in Kotlin Start
t2 ==> (Boolean) -> Unit
(::t2) ==> (Boolean) -> Unit
(::t2)(arg) ==> t2(arg) ==> Unit
источник

ВС

Виталий Сердюк in Kotlin Start
Denys
fun cre2(function: () -> Unit) {
   function()
}

cre2 { t2(true) }
Спасибо
источник
2019 October 27

АО

Алексей Овсянников in Kotlin Start
El Mariachi 🎸
объясните, зачем вся эта свистопляска с nullable, если все-равно везде полно lateinit var... чем это лучше?
Там, может, уже ответили, но lateinit нужен в основном в андроиде - у здорового программиста на котлине он скорее вызовет вопрос разряда "зачем":)
источник