我测量了数据库查询,我发现它第一次运行时比所有后续查询都慢。我第一次运行下面的代码时得到:11
. 对于所有后续调用,它始终是 only 1
。它是如何工作的,所以在第一次查询后它会更快?
long time = System.currentTimeMillis();
Cursor cursor = DBHelper.getInstance().getAllContacts();
Logger.log(TAG, "measured time is " + String.valueOf(System.currentTimeMillis() - time));
`getAllContacts() 方法是:
(getReadableDatabase().rawQuery("SELECT _id, name, title FROM " + CONTACTS_TABLE_NAME, null));