Есть ли способ приобрести эксклюзивную блокировку записи для всей базы данных Berkeley DB, не закрывая ее и не открывая заново, используя Db :: set_lk_exclusive ()?
Возможно используя DbEnv :: lock_get ()? Но как в этом случае это назвать? Я не нашел никаких примеров по этому поводу.
Благодарю.
Я выложил то же самое вопрос в форумах Oracle и получил ответ:
Невозможно получить эксклюзивную блокировку записи в базе данных BDB, если вы уже открыли ее для использования блокировки на уровне страниц. DbEnv :: lock_get () и остальная часть интерфейса блокировки действительно должны использоваться, только если вы планируете управлять всеми блокировками, полученными в среде.
Других решений пока нет …