SQLDelight 仍然在 Maven 存储库上标记为实验库,尽管第一个版本似乎于 2018 年 10 月发布。
我在 KMM 中制作了一个示例应用程序,我可以在其中插入/删除行,到目前为止,它似乎对我们的用例运行良好。但是,有人可以帮助我了解它的哪些方面在产品中使用不安全。是否存在任何性能问题?或者产品中是否存在随机崩溃的可能性?或者,我们是否知道是否有应用程序成功地将 Prod 中的 SqlDelight 用于其 KMM 应用程序?
谢谢!
我正在关注此处的Kotlin/Native Concurrency 实践。我无法理解最后一个示例,为什么“上面修改后的 saveToDb 函数现在处理后台调用,并且仅捕获函数参数。这不会冻结父类”
class CountingModelSafer{
var count = 0
fun increment(){
count++
saveToDb(count)
}
private fun saveToDb(arg:Int) = background {
println("Doing db stuff with $arg, in main $isMainThread")
}
}
Run Code Online (Sandbox Code Playgroud)
[请注意,在这些示例中,在背景内部,传递的 lambda 被冻结]
下面的代码片段会导致整个 CountingModel 被冻结,但上面的代码片段不会被冻结。有人可以帮我理解为什么会这样吗?
class CountingModel{
var count = 0
fun increment(){
count++
background {
saveToDb(count)
}
}
private fun saveToDb(arg:Int){
//Do some db stuff
println("Saving $arg to db")
}
}
Run Code Online (Sandbox Code Playgroud) kotlin-native kotlin-multiplatform kotlin-multiplatform-mobile