【发布时间】:2018-04-20 14:19:12
【问题描述】:
我正在使用一个 Java-API,它大量使用 Autoclosable-Interface,因此在 Java try-with-resources 中。但是在 Java 中,您可以指定
try (res1, res2, res3...) {
...
}
我们有办法使用多个资源吗?它看起来像众所周知的回调地狱:
val database = Databases.openDatabase(dbFile)
database.use {
database.createResource(ResourceConfiguration.Builder(resPathName, config).build())
val resMgr = database.getResourceManager(ResourceManagerConfiguration.Builder(resPathName).build())
resMgr.use {
val wtx = resMgr.beginNodeWriteTrx()
wtx.use {
wtx.insertSubtreeAsFirstChild(XMLShredder.createStringReader(resFileToStore))
}
}
}
【问题讨论】:
-
我不知道,但没有什么能阻止你编写自己的自定义扩展函数,借用使用中的想法。
标签: kotlin