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

2024-01-31

我一直在尝试使用Web SQL 数据库 API在基于 webkit 的浏览器中。我一直在使用异步API主要在用户界面线程 and a 网络工作者。两个线程都访问同一个数据库(正如您所知,其背后是 sqlite)

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

多一点背景。我的网络工作者只是对一个表执行查询,该表可能有一条记录从主用户界面线程插入其中。

我想知道它是否确实记录在某处本地/网络存储可以从 ui 线程和 web 工作线程安全地访问吗?我在某处读到过索引数据库 API是线程安全的,但这对我现在没有帮助,因为我的目标浏览器对它的支持很差/不存在(至少我这么认为 - 我从http://caniuse.com http://caniuse.com )

任何见解将不胜感激


您不能使用 WebWorkers 中的 localStorage 或 sessionStorage。

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

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

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

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

  • iPad - 无法在框架内滚动

    我无法滚动 iPad Safari 中框架内调用的 pdf 我已经尝试过两件事 2 指滚动 使用对象 嵌入代替框架 但这是行不通的 事实上我已经尝试了很多东西 溢出 高度等等 请帮我 先感谢您 根据这篇文章http support appl
  • 在 Google 表格脚本中设置活动单元格的值

    我想创建一个公式 在某个单元格更改上创建时间戳 下面的代码就可以了 我现在想做的是将公式转换为纯文本 将该时间戳锚定到工作表上 如果您手动执行此操作 您将选择时间戳 复制它们并将它们粘贴为值 我不想手动执行此操作 因此我创建了下面的脚本 它
  • 我如何使用 querySelector() 选择具有双类的元素

    当我想使用 querySelector 选择元素时遇到问题 ul class xoxo blogroll ul 我怎样才能选择它ul元素 在我的代码中我像这样使用 var list document body querySelector u
  • 实现悬停信息框

    我有一个日历 当用户将鼠标悬停在单元格上时 会出现一个很大的信息框 其中包含该日期的详细信息 虽然当用户离开时使信息框消失 但我遇到了一些麻烦 我基本上想要它 这样当鼠标光标移出信息框隐藏的日历单元格时 它就会消失 但我遇到了麻烦 因为mo
  • 如何强制折断不可折断的字符串?

    我有一个根据数据库中包含的数据生成的 HTML 页面 数据库有时包含浏览器无法分解的长字符串 因为这些字符串不包含可分解的字符 空格 点 逗号等 有没有办法使用 html css 甚至 javascript 来解决这个问题 看到这个link
  • 在 setInterval / setTimeout 中使用变量作为时间[重复]

    这个问题在这里已经有答案了 这是一个示例情况 var count time 1000 setInterval function count 1 time 上面的代码会将 count 变量加 1 即 1000 毫秒 看来 setInterva
  • 如何使用 jQuery Ajax 将 PHP 数组值传递到另一个文件?

    这是我的代码
  • 窗口大小调整触发的 DOM 事件

    我有一个布局相当复杂的页面 最初打开页面时 某些元素的对齐存在问题 但是 可以通过更改浏览器窗口的大小来 永久 解决此问题 显然 我不希望用户必须调整浏览器窗口的大小才能使页面正确显示 所以我想知道是否有一种方法可以在页面首次加载时以编程方
  • 如何知道浏览器空闲时间?

    如何跟踪浏览器空闲时间 我用的是IE8 我没有使用任何会话管理 也不想在服务器端处理它 这是纯 JavaScript 方法来跟踪空闲时间 并在达到一定限制时执行一些操作 var IDLE TIMEOUT 60 seconds var idl
  • 将 onclick 事件应用于页面加载时不存在的元素

    我将列表样式设置为看起来像选择框 并且当用户单击列表中的元素时我想触发一个函数 但是该元素是通过加载的AJAX因此 当页面加载并且我无法绑定时不存在onclick事件到它onDomReady 如果我把它作为一个普通的选择列表 我可以只标记一
  • 有没有办法伪造同步 XHR 请求?

    我正在使用 Emscripten 系统将一堆 C 代码移植到 Javascript C 代码有很多调用fopen这是一个同步 IO 调用 在 Emscripten 中 我们使用对本地资源的 XHR 请求来模拟这一点however 在 Fir
  • 为什么 Array.prototype.filter() 在 Magnolia JavaScript 模型中抛出错误?

    我正在尝试过滤 FreeMarker 列表Magnolia JavaScript 模型 https documentation magnolia cms com display DOCS61 How to work with JavaScr
  • 如何使用 JavaScript 获取元素的填充值?

    我有一个textarea在我的 HTML 中 我需要获取整数或浮点形式的填充数值 以像素为单位 我如何使用 JavaScript 获取它 我没有使用 jQuery 所以我正在寻找纯 JavaScript 解决方案 这将返回padding l
  • 是否可以将请求标头添加到 CORS 预检请求中?

    我有一个从外部服务器 不是服务器 访问 API 的网站 为网站提供服务 通过简单的XmlHttpRequest 见下文 那个API 需要将用于访问服务的 API 密钥添加为请求标头 然而 正如这些CORS https developer m
  • JavaScript 提升解释

    下面的片段有什么区别 var a 0 function b a 10 return function a b console log a gt 10 and var a 0 function b a 10 return function a
  • Javascript onload 不起作用[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我正在使用
  • 弹出窗口的动态高度取决于内容,可能吗?

    是否有可能获得一个宽度始终为 400px 的弹出窗口 但根据弹出窗口中的内容动态高度 我已经看到了这个 但不知道如何将其应用到弹出窗口 调整 iframe 的宽度高度以适应其中的内容 https stackoverflow com ques
  • 使用 AJAX 和 JQuery 按设定的时间间隔刷新 Rails 部分

    I have a page in my rails application that looks like 现在 我有另一个用 python 编码的人工智能应用程序 它处理视频 显示在 Rails 应用程序页面的左侧 并使用捕获的车辆及其相
  • 搜索多维数组 JavaScript

    我有一个如下所示的数组 selected products 0 r1 7up 61 Albertsons selected products 1 r3 Arrowhead 78 Arrowhead selected products 2 r
  • 用javascript调用外部网页(跨域)

    我正在尝试使用以下网络服务来验证提要这个问题 https stackoverflow com questions 11996430 check if a url is a valid feed 但浏览器不允许我向另一台服务器发送 ajax

随机推荐

  • 需要帮助向 MIPS 单周期数据路径添加更多功能

    I am trying to add jal functionality to the following but I am stuck with how does it work I know that it stores the old
  • 当附加调试器时,从 .Net 代码调用 C++ dll 的速度极其缓慢

    我正在使用 VS 2008 来编译和调试我的代码 在我的应用程序中 前端是C 后端是C 我通过互操作访问 C 代码 我注意到的一件事是 如果我按 F5 并链接本机代码的调试版本 则运行本机代码将需要 20 秒以上 如果我链接到本机代码的发布
  • 确定 android 中的互联网速度

    我正在开发一个 Android 视频流应用程序 我必须检测互联网速度以根据该速度调整我的流质量 我在网上搜索了如何在android中检测互联网速度 但我发现只有一种下载文件并了解其大小以确定带宽的方法 bandwidth contentLe
  • 蓝牙、wifi 和铃声模式的广播意图

    以下事件中广播的意图是什么 WiFi状态改变 蓝牙状态改变 振铃模式更改 For 无线网络状态变化 WifiManager WIFI STATE CHANGED ACTION http developer android com refer
  • DAAB,使用数据库实例的最佳方法是

    伙计们 我将使用 Enterprise Library 4 1 尤其是 DAAB 这是我有问题 最好的方法是什么以及原因 每当我需要运行时 DbCommand 我创建数据库实例 使用 DatabaseFactory CreateDataba
  • 在chrome扩展中,如何使用内容脚本注入Vue页面

    我正在尝试实现 JSON 查看器 chrome 扩展 我已经用 Vue 实现了查看器 http treedoc org http treedoc org 现在的问题是如何使用 Chrome 扩展内容脚本注入 Vue 页面 I found 这
  • Cassandra BETWEEN 和 ORDER BY 操作

    我想在 Cassandra 0 7 8 上执行 SQL 操作 例如 BETWEEN ORDER BY 和 ASC DSC 顺序 据我所知 Cassandra 0 7 8 并不直接支持这些操作 请让我知道有没有办法通过调整二级索引来完成这些
  • Mac OS X 上我的 .emacs 文件在哪里

    所以我尝试将 google go 模块添加到我的 emacs 文件中 以便当我使用 emacs 编辑我的 go 文件时 它将具有适当的缩进和单词突出显示 我在网上查看过 似乎我需要将以下代码片段添加到我的 emacs 文件中 我找不到 go
  • Python3中map的非惰性评估版本?

    我正在尝试使用map在Python3 这是我正在使用的一些代码 import csv data 1 2 3 with open output csv w as f writer csv writer f map writer writero
  • 打开 时变量为空 - JFS 2.0、Primefaces

    你好吗 也许现在是新手问题 现在我在表单中有一个输入和一个 提交 按钮 当我点击提交时 这不会调用任何方法 这只是打开一个
  • Keras 中的 fit_generator 中的worker 是什么意思?

    我有一个大数据集存储在tfrecord像 333 这样的文件用于训练 所以我将数据分成多个文件 例如 1024 tfrecords 文件 而不是一个 我在 tf Dataset Api 中使用了输入管道 喜欢 ds ds TFRecords
  • Opengl 着色器问题 - 奇怪的光反射伪影

    我已经为此奋斗了好几天 我想我终于将问题范围缩小到了每个顶点切线的问题 但我不确定解决它的最佳方法 上下文是 iPhone 应用程序 opengl es2 使用我自己的引擎 我的着色器是凹凸贴图 法线贴图 类型 使用提供的每个顶点切线来创建
  • 我可以使用 ul li 而不是 select dropdown 并使用 jquery 使其成为表单的一部分吗?

    我花了很长时间尝试将 select 重写为 ul li 并相应地设置其样式 但我对代码的重量和途中的小烦恼感到非常恼火 所以我想完全放弃这个想法 只使用普通的 ul li 菜单和某种 javascript 来使其功能像 select 用于表
  • gulp browserify reactify 任务相当慢

    我使用 Gulp 作为我的任务运行程序 并使用 browserify 来捆绑我的 CommonJs 模块 我注意到运行 browserify 任务非常慢 大约需要 2 3 秒 而我所拥有的只是 React 和一些我为开发而构建的非常小的组件
  • 如何在 MySQL 中搜索以 A 开头的名称?

    我有一个问题 我们如何使用 SELECT 来搜索 MySQL 表中以 A 开头的名称 谢谢 SELECT FROM table name WHERE columnname LIKE A
  • 为什么我无法使用 Rails 4.0.0.rc1 (ruby 2.0) 安装 postgresql

    第一次上论坛 所以我会尽量具体 对于任何可能的拼写错误 我们深表歉意 好吗 我对 Rails 比较陌生 不到一年 我想创建一个默认项目来使用它 我一直在开发中使用sqlite3 在生产中使用pg heroku 但现在我想把事情做好 我遇到了
  • C# MongoDb 连接到副本集问题

    根据 mongodb 网站 如果我只给副本集中的一个成员 我应该能够连接到副本集 即使种子列表不完整 C 驱动程序也能够连接到副本集 即使主服务器不在种子列表中 只要种子列表中至少有一台服务器做出响应 它就会找到主服务器 响应将包含完整的副
  • 如何在检测到 AccessViolationException 时强制应用程序崩溃

    我们使用自动崩溃报告工具 即http crashrpt sourceforge net http crashrpt sourceforge net 用于生成崩溃报告 因此 如果一段非托管代码通过访问NULL例如 指针 应用程序崩溃 崩溃报告
  • 使用 python requests 登录网站

    我在从 python 脚本登录网站时遇到一些困难 以便稍后在连接后从中检索数据 我认为 HTML 页面中包含需要用户名和密码的表单的部分如下 div class contentLogin div
  • 我可以在浏览器 ui 线程和 web 工作线程中安全地使用 html5 中的哪些本地存储

    我一直在尝试使用Web SQL 数据库 API在基于 webkit 的浏览器中 我一直在使用异步API主要在用户界面线程 and a 网络工作者 两个线程都访问同一个数据库 正如您所知 其背后是 sqlite 一切都表现良好 但偶尔会有事务