Size: a a a

Kotlin Community

2020 November 21

AN

Alexander Nozik in Kotlin Community
саша сок #KotlinGang
а я могу как-то ресетнуть lazy? чтобы оно стало не инициализованным и при первом обращении после ресета заново его инитить
Нет, надо свой делегат делать
источник

AM

Andrew Mikhaylov in Kotlin Community
Можно поискать фичреквест на ютреке про возможность сбрасывать лэйзи и скинуть сюда. Я думаю, желающие лайкнуть готовую ссылку найдутся)
источник

AN

Alexander Nozik in Kotlin Community
Andrew Mikhaylov
Можно поискать фичреквест на ютреке про возможность сбрасывать лэйзи и скинуть сюда. Я думаю, желающие лайкнуть готовую ссылку найдутся)
Там прямо с lazy не получится, он кроме всего прочего позволяет синхронизацию. А ресет это все поломает. Но какой-то альтернативный вариант с ресетом был бы полезен, да.
источник

с#

саша сок #KotlinGang... in Kotlin Community
Alexander Nozik
Там прямо с lazy не получится, он кроме всего прочего позволяет синхронизацию. А ресет это все поломает. Но какой-то альтернативный вариант с ресетом был бы полезен, да.
а мне вот и надо, чтобы с синхронизацией было. а почему ресет поломает?
источник

AN

Alexander Nozik in Kotlin Community
саша сок #KotlinGang
а мне вот и надо, чтобы с синхронизацией было. а почему ресет поломает?
Ну потому, что ресет тоже синкать надо будет. В общем, сложная логика получится. Лучше разделить
источник

с#

саша сок #KotlinGang... in Kotlin Community
ещё я попробовал такой вариант

var lazy = lazy(SYNCHRONIZED, lambda)
val property by lazy
...
lazy = lazy(SYNCHRONIZED, lambda)

но видимо делегат только один раз биндится
источник

VK

Vadim Karpenko in Kotlin Community
в котлин файлах в AS почему то не работает вынесение локальной переменной в проперти, есть вариант как это делать ?
источник

GO

GGorAA Official in Kotlin Community
Всем привет, вопрос по Ktor
Пытаюсь подключить kotlinx.serialization, но что то он не видит функцию serialization, как на скрине
Все завивимости в виде плагина Gradle и библиотеки kotlinx.serialization я поставил, но все равно не видит
Как такое чиниться?
источник

GO

GGorAA Official in Kotlin Community
источник

VN

Viktor Noskin in Kotlin Community
GGorAA Official
Всем привет, вопрос по Ktor
Пытаюсь подключить kotlinx.serialization, но что то он не видит функцию serialization, как на скрине
Все завивимости в виде плагина Gradle и библиотеки kotlinx.serialization я поставил, но все равно не видит
Как такое чиниться?
Привет, подключи сериализацию Ктора implementation("io.ktor:ktor-serialization:$ktorVersion")
источник

GO

GGorAA Official in Kotlin Community
Viktor Noskin
Привет, подключи сериализацию Ктора implementation("io.ktor:ktor-serialization:$ktorVersion")
Понял, сейчас попробую
источник

GO

GGorAA Official in Kotlin Community
Да, сработало!
Но стоп, а зачем тогда kotlinx.serialization?
источник

D

Denys in Kotlin Community
GGorAA Official
Да, сработало!
Но стоп, а зачем тогда kotlinx.serialization?
ktor-serialization включает kotlinx.serialization и glue code для ktor :)
источник

D

Denys in Kotlin Community
Кстати, если вам нужен только json. Этого достаточно:

install(ContentNegotiation) {
   json()
}
источник
2020 November 22

с#

саша сок #KotlinGang... in Kotlin Community
слушайте, а разве ScriptEngine не мультиплатформ?
источник

AM

Andrew Mikhaylov in Kotlin Community
саша сок #KotlinGang
слушайте, а разве ScriptEngine не мультиплатформ?
:)
источник

с#

саша сок #KotlinGang... in Kotlin Community
мне просто сказал чел, что kts можно только на жвм. неприятненько.
источник

GO

GGorAA Official in Kotlin Community
Denys
Кстати, если вам нужен только json. Этого достаточно:

install(ContentNegotiation) {
   json()
}
Ну, он мне функцию serialization вообще пометил как deprecated 😂
источник

с#

саша сок #KotlinGang... in Kotlin Community
саша сок #KotlinGang
ещё я попробовал такой вариант

var lazy = lazy(SYNCHRONIZED, lambda)
val property by lazy
...
lazy = lazy(SYNCHRONIZED, lambda)

но видимо делегат только один раз биндится
насколько плохой воркэраунд?
источник

с#

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