Search code examples
androiddatabasecursorbackground-thread

Which database operations have to be executed in background?


Im a bit confused about which operations have to be executed in background thread:

Cursor curserU = myDataBase.rawQuery("some query");
startManagingCursor(curserU);
curserU.moveToFirst();
curserU.someFuctionWhichWillReturnData();

is it enough if only this line runs in background:

      Cursor curserU = myDataBase.rawQuery("some query");

or does everything have to beinbackground?


Solution

  • Putting rawQuery() into background thread is enough. When you are passing Cursor into SimpleCursorAdapter for example, it operates on Cursor on UI thread. But consider using CursorLoader as startManagingCursor() is marked as deprecated.