Я пытался использовать api базы данных web sql в браузерах на базе webkit. Я использовал асинхронный API в основном потоке пользовательского интерфейса и веб-воркер. Оба потока обращаются к одной и той же базе данных (которая, как вы знаете, является основой sqlite)
Все работает нормально, но иногда транзакции теряются или одна транзакция терпит неудачу, и это похоже на состояние синхронизации/гонки. Похоже, что доступ к базовой базе данных sqlite не является потокобезопасным.
Еще немного фона. Мой веб-воркер просто выполняет запрос к таблице, в которую может быть вставлена запись из основного потока пользовательского интерфейса.
Мне интересно, действительно ли где-то задокументировано, что локальное/веб-хранилище может быть безопасно доступно как из потока пользовательского интерфейса, так и из рабочего веб-потока? Я где-то читал, что indexeddb api является потокобезопасным, но это не помогает мне прямо сейчас, так как его поддержка браузерами плохая или отсутствует для браузеров, на которые я ориентируюсь (по крайней мере, я так думаю - Я получаю информацию с сайта http://caniuse.com )
Любые идеи будут с благодарностью получены