android.database.CursorWindowAllocationException when moving a Cursor

前端 未结 1 1426
渐次进展
渐次进展 2020-12-15 21:24

I\'am using an SQLite database and I regularly get runtime errors I can\'t find the origin of. After a query, I use moveToFirst to point on the first record ret

相关标签:
1条回答
  • 2020-12-15 21:34

    This error is nearly always due to not closing a cursor when it's finished with. Every time you open a cursor, memory is required to map the data that cursor represents and that memory cannot be released until the cursor is closed. There is a limit to the amount of memory available for this purpose so if cursors are not closed and an application continues to open new ones, this error is likely to occur at some point.

    I recommend you examine your code to make sure that all cursors created are being closed at some point. Also take care with any code that opens a cursor within a loop - your error message says 'open Cursors=736' which suggests a lot of cursor activity within a loop of some sort.

    0 讨论(0)
提交回复
热议问题