У меня есть приложение, которое позволяет пользователям запрашивать sqlite DB.Когда приложение запускается, оно загружает URL-адрес, чтобы узнать, есть ли какие-либо обновления базы данных в фоновом потоке.
К сожалению, это вызывает блокировки, если пользователь выбирает функцию, которая пытается запросить базу данных, пока обновлениеБег.
У меня двоякий вопрос.
Какова наилучшая стратегия предотвращения конфликтов в этом сценарии.
- Скопируйте базу данных в другой файлобновите его и скопируйте обратно
- Включите одноэтапное управление и используйте его для планирования операций в очереди.
- цикл и ожидание открытия блокировки (хотя я не хочу удерживатьот пользователя)
Возможно ли приостановить фоновый поток до тех пор, пока приложение не завершится, и не запустите обновления непосредственно перед завершением приложения.
Если у кого-нибудь есть какой-либо совет, я буду признателен за это, поскольку мне необходимо запустить обновление без необходимости прекращать использование приложения пользователем.