Производительность Android ContentProvider - PullRequest
14 голосов
/ 13 декабря 2010

Мне любопытно, проводил ли кто-нибудь тестирование производительности при запросе ContentProvider через ContentResolver против запроса SQLiteDatabase объекта в том же процессе.Я предполагаю, что запрос ContentResolver передает назад курсор, который связывается с базой данных через Binder (Android IPC).Это означает, что если я прочитаю содержимое 100 записей через Cursor, это приведет к 100 вызовам метода Binder.Верны ли мои догадки, и если это так, то это будет значительно медленнее, чем доступ к базе данных в том же процессе?

1 Ответ

3 голосов
/ 03 февраля 2011

Я не сделал именно эту меру. Я пытался измерить производительность нескольких операций вставки через ContentProvider или напрямую через базу данных SQLite. Я вставил около 1000 предметов (один за другим). Вставить через ContentProvider было намного медленнее. В моем тесте почти на 10% медленнее.

...