NSPR блокируется с таймаутом

Я использую NSPR в качестве своей межплатформенной библиотеки потоков и использую следующие блокировки: PRLock и PRRWLock. Я хочу тайм-аут в функциях блокировки. Таким образом, он должен ждать 45 секунд, и если он не сможет получить блокировку в течение этого времени, вызов должен произойти с ошибкой.

Затем мы можем сообщить об ошибке пользователю в течение 45 секунд.

Как мне это сделать?

На самом деле я выполняю некоторые операции SQLite внутри блокировки, а иногда это занимает много времени, если база данных велика (~1,9 ГБ). Я хочу сообщить пользователю об ошибке, если блокировка не удалась. Пожалуйста помоги.

1 ответ

Я сам не использовал эту библиотеку, но у большинства ожиданий обычно есть тайм-аут.

Но, проверив документацию очень быстро, я нашел это для PRLock: "Получение блокировки не является прерываемой операцией и не имеет никакого механизма тайм-аута".

Ссылка на сайт

Другие вопросы по тегам