Spec-Zone.ru › SQLite

Характеристики устройства

#define SQLITE_IOCAP_ATOMIC                 0x00000001
#define SQLITE_IOCAP_ATOMIC512              0x00000002
#define SQLITE_IOCAP_ATOMIC1K               0x00000004
#define SQLITE_IOCAP_ATOMIC2K               0x00000008
#define SQLITE_IOCAP_ATOMIC4K               0x00000010
#define SQLITE_IOCAP_ATOMIC8K               0x00000020
#define SQLITE_IOCAP_ATOMIC16K              0x00000040
#define SQLITE_IOCAP_ATOMIC32K              0x00000080
#define SQLITE_IOCAP_ATOMIC64K              0x00000100
#define SQLITE_IOCAP_SAFE_APPEND            0x00000200
#define SQLITE_IOCAP_SEQUENTIAL             0x00000400
#define SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN  0x00000800
#define SQLITE_IOCAP_POWERSAFE_OVERWRITE    0x00001000
#define SQLITE_IOCAP_IMMUTABLE              0x00002000
#define SQLITE_IOCAP_BATCH_ATOMIC           0x00004000
#define SQLITE_IOCAP_SUBPAGE_READ           0x00008000

Метод xDeviceCharacteristics объекта sqlite3_io_methods возвращает целое число — вектор этих битовых значений, описывающих характеристики ввода-вывода устройства массового хранения данных, на котором находится файл, к которому относится sqlite3_io_methods.

Свойство SQLITE_IOCAP_ATOMIC означает, что все операции записи любого размера атомарны. Значения SQLITE_IOCAP_ATOMICnnn означают, что операции записи блоков размером nnn байт, выровненных по адресу, кратному nnn, атомарны. Значение SQLITE_IOCAP_SAFE_APPEND означает, что при добавлении данных в файл сначала добавляются данные, а затем увеличивается размер файла, но не наоборот. Свойство SQLITE_IOCAP_SEQUENTIAL означает, что данные записываются на диск в том же порядке, в котором вызывается xWrite(). Свойство SQLITE_IOCAP_POWERSAFE_OVERWRITE означает, что после перезагрузки вследствие сбоя или потери питания могут измениться только байты файла, записанные на уровне приложения, а соседние байты, в том числе байты в том же секторе, гарантированно останутся неизменными. Флаг SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN указывает, что открытый файл нельзя удалить. Флаг SQLITE_IOCAP_IMMUTABLE указывает, что файл находится на носителе только для чтения и не может быть изменён даже процессами с повышенными привилегиями.

Свойство SQLITE_IOCAP_BATCH_ATOMIC означает, что базовая файловая система поддерживает атомарное выполнение нескольких операций записи, если эти операции записи заключены между вызовами SQLITE_FCNTL_BEGIN_ATOMIC_WRITE и SQLITE_FCNTL_COMMIT_ATOMIC_WRITE.

Свойство SQLITE_IOCAP_SUBPAGE_READ означает, что файл базы данных можно читать блоками, размер которых не кратен размеру страницы и которые не начинаются на границе страницы. Если это свойство отсутствует, SQLite выполняет только чтение и запись полных страниц с выравниванием по границам страниц. Единственное исключение — чтение части первой страницы для доступа к заголовку базы данных.

См. также списки объектов, констант и функций.

SQLite is in the Public Domain.
https://sqlite.org/c3ref/c_iocap_atomic.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API