当前位置: 首页 > 面试题库 >

移动游标时android.database.CursorWindowAllocationException

罗安和
2023-03-14
问题内容

我正在使用SQLite数据库,并且经常遇到无法找到源的运行时错误。查询后,我通常moveToFirst指向检索到的第一条记录,这有时会触发android.database.CursorWindowAllocationException异常。添加到此异常之外的是以下语句:“光标窗口分配2048kb失败。#open
Cursors = 736(#cursors由此proc = 736打开)”。

在Android文档中,我尚未找到与此异常相关的任何信息。有谁知道它的原因和避免它的方法


问题答案:

此错误几乎总是归因于结束时没有关闭游标。每次打开游标时,都需要使用内存来映射游标表示的数据,并且直到关闭游标后才能释放该内存。可用于此目的的内存量受到限制,因此,如果未关闭游标,并且应用程序继续打开新的游标,则可能会在某个时候发生此错误。

我建议您检查代码,以确保在某个时候关闭所有创建的游标。还请注意在循环中打开游标的任何代码-您的错误消息显示“ open Cursors =
736”,这表明某种循环中有很多游标活动。



 类似资料:
  • 问题内容: 因此,正如标题所述,我想在鼠标拖动时移动椭圆。我先声明了椭圆并将其画出(因为我有8个椭圆,它们带有不同的颜色信息。四个是白色,另一个是红色)。我尝试做我对矩形所做的事情: 但这似乎不起作用。它给我一个错误 我有点困惑,因为我已经阅读了文档,并且Ellipse2D.Double存在这样的变量。 这是一个MCVE: 那么是否有替代算法,或者我只是在语法上缺少什么?我想知道解决方案。谢谢。

  • 这些是我找到的链接谷歌地图:移动标记和地图一起顺利与用户? 如何在Google Maps v2 android中平稳地移动当前位置标记

  • 任务是将物理光标移动到元素。 尝试以下操作: 和以下内容:

  • 因此,目前在伪代码中,我有: 我取代了dragbutton类中的鼠标运动/按压/释放功能。因此,我不能在那里引用新的。因此,dragbutton类中的无法获得,因为它是不同的self。我有什么办法让它起作用吗?谢了。

  • 欢迎进入第一章,这一章将学习简单的光标移动操作。 如果你已经有了一定基础,这部分可以略过,直接 G 到文档尾部按照操作进入下一章。 移动光标 单位级 h 向左一字符 j 下一行 k 上一行 l 向右一字符 单词级 w or W 向右移动到下一单词开头 e or E 向右移动到单词结尾 b or B 向左移动到单词开头 注意:所有小写单词都是以分词符作为单词界限,大写字母以空格作为界限 在下面字符块

  • 问题内容: 有人可以向我解释一下吗: 如果我注释掉最后三行,输出为: 但是,如果我取消最后三行的注释,则输出为: IE。第一个游标已用第二个游标中执行的DML结果进行了更新。 这是预期的行为吗?有什么方法可以预防吗? 我正在运行Python 3.6.3(根据Ubuntu 17.10),以防万一。 问题答案: 如果可能,SQLite会根据需要计算结果行。但这并非总是可能的,因此无法保证。 您永远不要