Установка таймаута для соединения с базой данных
#include <qdb/qdb.h>int qdb_setbusytimeout( qdb_hdl_t *hdl,int timeout );
0
. Это означает, что qdb_statement() возвращает управление немедленно, если файл базы данных заблокирован. qdb
Функция позволяет установить таймаут для соединения с базой данных. Начальное значение таймаута указывается опцией -t сервису qdb со значением по умолчанию в 5 сек. Значение 0
эквивалентно QDB_TIMEOUT_NONBLOCK
.
Таймаут определяет предельное ожидание выполнения запроса к базе данных до возвращения пользователю EBUSY
. Он актуален для случаев, когда к одной базе данных обращается два клиента. В этом случае пришедший вторым будет ожидать разблокирования базы данных первым пользователем.
![]() | Если установлен флаг QDB_CONN_NONBLOCKING, значение таймаута будет сброшено в 0 или в значение по умолчанию для -t. Аналогично, установка флага QDB_TIMEOUT_NONBLOCK неявно установит флаг QDB_CONN_NONBLOCKING.
Флаг |
ЗОСРВ «Нейтрино»
qdb_connect(), qdb_parameters(), qdb_statement()
Предыдущий раздел: перейти