Дата публикации: 14.05.2001

Последний штрих для RowSet

Совсем недавно пришло письмо, в котором было коротко и ясно написано «Faster!». Пожалуй, настало время пересмотреть смысл этого термина.

Изменения в коммерческой версии IBProvider

  • Динамический кэш рядов результирующего множества. Провайдер постепенно инициализирует кэш, максимальный размер которого можно указать через свойство набора рядов «Memory Usage«. Это приводит к выделению физической памяти только для реально используемой части кэша. Ранее кэш сразу инициализировал всю указанную ему память, что приводило к медленному старту и лишним затратам такого драгоценного ресурса как оперативная память.
  • Использование hash-таблицы для управления кэшем. Это позволяет эффективно управлять кэшем для очень большого числа рядов результирующего множества. Ранее затраты на управление кэшем были пропорциональны его размеру. Опять же, см. свойство «Memory Usage«.
  • 64-битный доступ к временному файлу.
  • 32-битный кэш рядов. Ранее использовалась 16-битная индексация, поэтому верхняя граница числа рядов в кэше была 65535.
  • Быстрая загрузка результирующего множества. При выполнении позиционирования в конец множества и при пропуске рядов производится запись непосредственно во временный файл, минуя кэш. Как следствие — физическая память не выделяется.
  • Новый параметр для строки подключения — «bicursor«. Он позволяет задать режим работы курсоров результирующих множеств по умолчанию — однонаправленный или произвольный. По умолчанию оставлен первый вариант.

Дата публикации: 14.05.2001. Права на материал принадлежат: IBProvider. При перепечатке ссылка на сайт https://www.ibprovider.com/rus обязательна.