Должен ли я держать соединение Sqlite открытым?

должен ли я держать соединения sqlite открытыми или я должен закрывать его каждый раз, когда я закончил с пакетными запросами?

Update: это специфично для iPhone/iOS, если это имеет значение.

1 ответов


моя общая рекомендация учитывая, что взаимодействие с БД управляется пользователем, я бы сказал, откройте, выполните свои действия, закройте его, а затем вернитесь к пользователю. Это ничего не оставляет в воздухе. Существует тенденция к чрезмерному акценту на производительность. Лучший подход к однопользовательским приложениям, который я нахожу, - предположить, что производительность будет хорошей, а затем доказать обратное.

один из способов доказать это себе-это правильный тестовый код, чтобы определить, сколько времени это займет откройте и закройте соединение. Далее стоит попробовать наборы действий, по одному с каждой стратегией. Это должно убедить тебя.

недостатки, чтобы оставить ваше соединение открытым, как правило, перевешивают (опять же, в однопользовательских приложениях) преимущества его открытия.

Это мои 2 цента,