首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQLBrite会自动关闭光标吗?

SQLBrite会自动关闭光标吗?
EN

Stack Overflow用户
提问于 2017-04-21 00:16:14
回答 1查看 226关注 0票数 1

我怀疑sqlbrite是否自动关闭光标,因为我一直得到:

dalvik.system.CloseGuard.open(CloseGuard.java:180) at android.database.sqlite.SQLiteDatabase.openInner(SQLiteDatabase.java:809) at android.database.sqlite.SQLiteDatabase.open(SQLiteDatabase.java:793)上未调用java.lang.Throwable的显式终止方法“close”

但是我在文档中没有看到任何关于我应该被明确称为cursor.close的声明。

编辑1

下面是给我提供光标而不是关闭错误的代码片段:

代码语言:javascript
复制
DbProvider.db(getActivity()).createQuery(Item.NAME, sqlQuery, selectionArgs).mapToList(new Func1<Cursor, ItemEntity>() {
    @Override
    public ItemEntity call(Cursor cursor) {
        return new ItemEntity(cursor);
    }
}).subscribe(itemEntities -> {
    Debug.info(this, "items " + itemEntities );
}, Throwable::printStackTrace, () -> {});
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-21 01:12:50

如果您正在调用query.run()并获得一个游标,则需要手动关闭它。如果您正在使用mapToList/mapToOne api,则不需要手动关闭它。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43531921

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档