我可以在浏览器ui线程和web工作线程中安全地使用html5中的哪些本地存储

What local storage in html5 can I use safely in the browser ui thread and the web worker thread

本文关键字:线程 html5 存储 安全 浏览器 ui 工作 web 我可以      更新时间:2023-09-26

我一直在尝试在基于webkit的浏览器中使用web-sql数据库api。我一直在主ui线程中使用异步apiweb工作程序。两个线程都访问同一个数据库(正如您所知,这是sqlite underthehood)

一切都很好,但偶尔会丢失事务或一个事务失败,这似乎是一个时间/竞争条件。对底层sqlite数据库的访问似乎不是线程安全的。

多一点背景。我的web工作人员只是对一个表执行查询,该表可能有一条从主ui线程插入的记录。

我想知道是否真的在某个地方记录了可以从ui线程和web工作线程安全访问的本地/web存储?我在某个地方读到indexeddb-api是线程安全的,但这对我现在没有帮助,因为对于我所针对的浏览器来说,浏览器对它的支持很差/不存在(至少我认为是这样)http://caniuse.com)

如有任何见解,我们将不胜感激。

您不能从WebWorkers使用localStorage或sessionStorage。

虽然两者都是同步操作,但对于简单的数据写入和读取来说,它们并不是真正的问题。这个问题在浏览器启动时更为相关,但这是一个浏览器实现问题。

看看这个,它应该会有所帮助:http://www.nczonline.net/blog/2012/04/25/the-performance-of-localstorage-revisited/