Size: a a a

2019 October 24

00

0x3812 0x3d4f22 in Kotlin Start
central hardware
Мы всегда будет получать ссылку на объект, поправьте если не прав
В книге от авторов языка написано именно так
источник

D

Denys in Kotlin Start
central hardware
Указателей нету, а значит какая разница что нам вернут копию или тот что мы передали в качестве параметра?
Разница есть. То, что происходит передача по значению референса не значит, что мы должны копировать объект каждый раз.
источник

A

Aleksandr in Kotlin Start
источник

A

Aleksandr in Kotlin Start
Что конкретно?
источник

D

Denys in Kotlin Start
см. Code of Conduct. :)
источник

D

Denys in Kotlin Start
Вам нужна реактивность с возможностью использовать закешированный результат?
источник

A

Aleksandr in Kotlin Start
Я это уже сделал и нашёл вот такой вариант: https://proandroiddev.com/forever-suspended-what-if-your-lateinit-var-was-really-late-b2652cc85de0
источник

A

Aleksandr in Kotlin Start
Возможно есть другие варианты
источник

A

Aleksandr in Kotlin Start
Denys
Вам нужна реактивность с возможностью использовать закешированный результат?
Мне нужно именно то что сделано в вышеуказанной статье, но хотел бы узнать все варианты
источник

D

Denys in Kotlin Start
Чет у меня вставки кода совсем не отображаются. x_x
источник

RI

Ruslan Ibragimov in Kotlin Start
И у меня, один листинг отобразился. Вообще не очень понятно что это и зачем. Нужно положить результат выполнения suspend функции в поле класса?
источник

RI

Ruslan Ibragimov in Kotlin Start
Возможно в Android этого нет, но в jdk есть AtomicReference. Запускаем корутину, записываем значение туда. Все
источник

D

Denys in Kotlin Start
Ruslan Ibragimov
Возможно в Android этого нет, но в jdk есть AtomicReference. Запускаем корутину, записываем значение туда. Все
источник

A

Aleksandr in Kotlin Start
Denys
Чет у меня вставки кода совсем не отображаются. x_x
источник

D

Denys in Kotlin Start
lazy {} не обойтись?
источник

D

Denys in Kotlin Start
В код не вникал, но выглядит очень громоздко и ненужно.
источник

RI

Ruslan Ibragimov in Kotlin Start
Выглядит чем-то переусложненным, возможно без явных причин на это. Можно саму задачу описать? Точнее способ использования этого класса.
источник

A

Aleksandr in Kotlin Start
Есть класс Proxy, который делегирует свои вызовы объекту класса MainClass, но экземпляр MainClass устанавливается в Proxy не сразу, а спустя какое-то время. До установки уже дергаются методы класса Proxy. Мне нужно чтобы они были suspend и дожидались когда экземпляр MainClass появится. Усложняется это всё ещё тем что экземпляр MainClass может меняться в классе Proxy.
источник

D

Denys in Kotlin Start
Как вариант, Proxy может сам получать MainClass и делать операцию.

class Proxy {
 fun doOnSmth(action: (MainClass) -> Unit) {
   launch {
     val instance = get()
     action(instance)
   }
 }
}
источник

A

Aleksandr in Kotlin Start
Denys
Как вариант, Proxy может сам получать MainClass и делать операцию.

class Proxy {
 fun doOnSmth(action: (MainClass) -> Unit) {
   launch {
     val instance = get()
     action(instance)
   }
 }
}
Чем является get()?
источник