![]() |
|
|||
WebMoney: WMZ Z294115950220 WMR R409981405661 WME E134003968233 |
Visa 4274 3200 2453 6495 |
Это позволяет или отключает разделение кэша базы данных и структур данных
схемы между соединениями
с той же самой базой данных. Разделение позволено, если аргумент true
и отключено, если аргумент false. Этот интерфейс опущен, если SQLite собран с
-DSQLITE_OMIT_SHARED_CACHE.
Опция копиляции
-DSQLITE_OMIT_SHARED_CACHE рекомендуется, потому что
использованию общего режима кэширования препятствуют. Кэш управляется для всего процесса. Это изменение с
SQLite version 3.5.0 (2007-09-04).
В предыдущих версиях SQLite разделение было позволено или отключено
для каждого потока отдельно. Режим совместного использования кэша, установленный этим интерфейсом,
влияет на все последующие вызовы
sqlite3_open(),
sqlite3_open_v2() и
sqlite3_open16().
Существующие соединения с базой данных продолжают использовать режим
совместного использования, который был в действительности в то время,
когда они были открыты. Это вернет SQLITE_OK,
если общий кэш был позволен или отключен успешно. Иначе вернется
код ошибки. Общий кэш отключен по умолчанию. Рекомендуется, чтобы это осталось
именно так. Другими словами, не используйте эту возможность.
Этот интерфейс продолжает обеспечиваться для исторической совместимости, но
использование осуждается. Если общий кэш должен использоваться,
рекомендуется, чтобы общий кэш был позволен только для отдельных соединений с
базой данных, используя интерфейс
sqlite3_open_v2() с флагом
SQLITE_OPEN_SHAREDCACHE. Примечание: Этот метод отключен в MacOS X 10.7 и в iOS version 5.0
и будет всегда возвращать SQLITE_MISUSE. На тех системах разделенному режиму
кэширования нужно позволить связь для каждой базы данных через
sqlite3_open_v2() с
SQLITE_OPEN_SHAREDCACHE. Этот интерфейс ориентирован на многопоточное
исполнение на процессорах, где написание 32-битного целого числа атомное. См. также: SQLite Shared-Cache Mode
Choose any three.
SQLite C Interface
Включить или выключить кэш общих страниц
int sqlite3_enable_shared_cache(int);