Простой запрос SQLite SELECT на Windows Phone очень медленный на устройстве высокого класса (Lumia 930).SQLite SELECT очень медленный на Windows Phone
select * from tableName
Это выборка около 15000 записей (да, я их) и, как правило, я бы ожидать, что она не будет это медленно. Однако для получения всех записей требуется около 12-13 секунд. Я использую клиент SQLite.Net-PCL.
Что может быть причиной этого? Это правда, что это due to the very slow wrapper? Есть ли обходной путь, каким-либо образом его улучшить?
EDIT: Я попытался использовать SQLite PCL from Microsoft Open Technologies, и я вручную сопоставил свойство по свойству, и я получил гораздо лучшие результаты. Таким образом, кажется, что количество строк, количество столбцов и отражение, все вместе, заставляют вещи замедляться. Теперь я работаю над попыткой представить аналогичную функциональность через SQLite.NET-PCL, библиотеку, которую я использую, чтобы посмотреть, как это будет происходить.
EDIT2: Я ответил на ответ Питера как на свой вопрос, так как мне удалось значительно улучшить производительность, вручную сопоставив тип по типу, используя Prepare call и stepping by row by row.
Зачем вам все они нужны за один раз, вам нужны все столбцы. Я бы этого не сделал, если у меня не было выбора на сервере с высоким уровнем ... –
Ваше приложение действительно способно отображать информацию о всех 15000 записях на экране телефона одновременно? –