Java Android minSdkVersion>;需要Realm.close()19?
我在Java领域的文档中发现,如果您有幸使用minSdkVersion>=19和Java>=7的应用程序,那么您可以使用try with resources:Java Android minSdkVersion>;需要Realm.close()19?,java,android,realm,Java,Android,Realm,我在Java领域的文档中发现,如果您有幸使用minSdkVersion>=19和Java>=7的应用程序,那么您可以使用try with resources: try (Realm realm = Realm.getDefaultInstance()) { // No need to close the Realm instance manually } 我想知道minSdkVersion>=19领域是否需要关闭()?或者只用于线程和循环,不需要手动关闭领域实例?文档中说,与此构造不同: pr
try (Realm realm = Realm.getDefaultInstance()) {
// No need to close the Realm instance manually
}
我想知道minSdkVersion>=19领域是否需要关闭()?或者只用于线程和循环,不需要手动关闭领域实例?文档中说,与此构造不同:
protected Void doInBackground(Void... params) {
Realm realm = Realm.getDefaultInstance();
try {
// ... Use the Realm instance ...
} finally {
realm.close();
}
return null;
}
您可以改为执行此构造(API 19+)
它们是等价的
它并不是说您实际上不需要关闭本地领域实例,只是如果您在后台线程上使用它,您可以利用领域
实现可关闭,因此尝试使用资源自动调用领域.close()
在最后
中您好@EpicPandaForce您说这仅仅是为了实现可关闭?在API 19+中,closable对象在try?Realm实现closable时关闭,因此if可以与try with resources
一起使用。因此,Realm在try(…){…}
末尾的Finally块中自动关闭。
protected Void doInBackground(Void... params) {
try (Realm realm = Realm.getDefaultInstance()) {
// ... Use the Realm instance ...
}
return null;
}