问题标签 [sharedarraybuffer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
reactjs - 为什么以及如何在我的 react-app 中解决 SharedArrayBuffer 警告
我的 React-app 已安装axios
(dependency) 和json-server
(dev-dependency),在我这样做之后,我的 react-app 开始抛出以下警告消息:
[Deprecation] SharedArrayBuffer will require cross-origin isolation as of M91, around May 2021.
这是什么,我该如何解决这个错误,为什么会这样?
我是该领域的初学者,错误中提供的链接使用的是我无法理解的高级语言,[this](https://developer.chrome.com/blog/enabling-shared-array-buffer/ ) 是控制台中提供的链接。
sharedarraybuffer - Android Chrome 88 和桌面 Chrome 92 中的 SharedArrayBuffer 更新
我需要帮助来解决以下问题。在使用 react 应用程序练习时,我在控制台中收到了这个消息:
[弃用] 自 2021 年 5 月左右的 M91 起,SharedArrayBuffer 将需要跨域隔离。有关更多详细信息,请参阅https://developer.chrome.com/blog/enabling-shared-array-buffer/。有人遇到这个问题吗?并且知道如何实施吗?
reactjs - React 在哪里为 SharedArrayBuffer 设置标头?
我正在 Windows10 的 localhost 上运行使用 create-react-app 创建的网站。当我尝试在我的网站中使用 ffmpeg 时,出现错误
“SharedArrayBuffer 未定义”
在火狐中。为了解决这个问题,我到处都看到我必须在“我的顶级文档”中添加 COOP 和 COEP 标题。
问题是我不明白什么是“顶级文档”以及在哪里可以找到它。
我试图添加:
在我的 index.html 中,正如我在某处看到的那样,但它不起作用。
您能否告诉我,我必须在其中添加标题的文件是什么以及在哪里可以找到它?
browser - 如何启用跨源隔离?(具体情况)
我正在使用 1and1 (ionos) 托管一个网站,它使用导入的 CSS 和 JS 提供一个 HTML 页面。我试图弄清楚如何启用跨源隔离,但我能找到的是我们需要启用某些响应标头:https ://web.dev/cross-origin-isolation-guide/ 。
具体在这些说明中:
在顶级文档上设置页眉是什么意思?如何做到这一点?我进行了大量搜索,但没有找到有关如何创建/启用这些响应标头的详细信息。
我需要这样做才能在 Firefox 中使用 SharedArrayBuffer。
security - `Uncaught ReferenceError: SharedArrayBuffer is not defined` 自 Chrome 92
的用法SharedArrayBuffer
导致错误:Uncaught ReferenceError: SharedArrayBuffer is not defined
在 Chrome 92 上。这是为什么?我该如何解决?
javascript - 如何在单个工作线程中监视对 SharedArrayBuffer 的更改?
我可以向你保证,这不是你典型的“如何观察 JS 变量的变化”的帖子!
所以我有一些工作线程为 Node.js 中的父线程收集数据。
父线程在设定的时间范围内处理数据,只关注事物。
有时工作线程发送给父线程的数据真的很有趣,当父线程得到有趣的数据时,我希望它立即被处理。(无需等待下一个刻度滚动。)
我坚持的是如何最快速有效地与主工作线程进行通信dataIsInteresting = true
。
工作线程立即知道他们的数据很有趣,但主线程只知道当它处理时,它通常会在几百毫秒后滴答作响。
我正在使用SharedArrayBuffer
s 在工作线程和父线程之间共享内存。
令人沮丧的是,父线程实际上立即拥有有趣的数据,它就在其中,只是在计时器关闭并告诉它处理该 SharedArrayBuffer 中的数据之前它不知道它。
我知道我可以通过多种方式从工作线程向父线程发送消息,但无论我怎么做都需要大约 0.75 毫秒。(对于 JS postMessage 以及本地 Websocket 客户端/服务器设置,速度似乎相同......这是有道理的。)
这很好,但是我找到了一种更快的方式来在线程之间进行通信(至少是这样),并且只是希望可能有其他我没有想到的方式?
我可以运行在父线程中调用的同一函数的递归循环isDataInteresting()
,不断地用 调用自身process.nextTick(() => {isDataInteresting();});
,但这会使 CPU 最大化,我担心它会减慢需要在父线程中定期发生的其他重要计算。
我可以将其切换为setTimeout(function(){isDataInteresting();},0);
每隔几千次调用调用一次,isDataInteresting()
以将父线程上的 CPU 使用率降低到恒定的 25%,这是我可能要采取的路线,但这看起来很笨拙。
我不能将激进的isDataInteresting()
检查传递给另一个工作线程,因为这会产生与我一开始遇到的相同的问题......这就是如何立即通知父线程有趣的数据!
不幸的是,也不允许通过 javascript postMessages 克隆/发布代理对象。
isDataInteresting()
支票在很大程度上是最快的。在大约 10,000 纳秒而不是 750,000 纳秒内通知父线程感兴趣的数据。所以如果kludge是唯一有效的东西,我想我会接受它。
我希望有另一种方法来检查我没有考虑的变量的更新数据吗?
谢谢阅读!
reactjs - 反应弃用 SharedArrayBuffer 问题
完成所有设置后,我在本地主机上安装了一个 React + Laravel 项目,我面临以下问题:-
[弃用] 自 2021 年 5 月左右的 M91 起,SharedArrayBuffer 将需要跨域隔离
有没有不升级任何版本的解决方案?
firefox - 无法使用 Firefox 在本地测试 WebAssembly 页面 - 未定义 SharedArrayBuffer
我正在使用基于 WebAssembly 的软件,该软件使用需要SharedArrayBuffer
. 它在 Chromium local/deployed 和 Firefox 89 部署中运行良好,但由于最好的性能是在 Firefox 下,我想在我的机器上测试和调整它,所以我运行python -m SimpleHTTPServer
. 在这种情况下,当我在 Firefox 中打开 127.0.0.1:8000 或 0.0.0.0:8000 时,SharedArrayBuffer
是undefined。也许这是一个安全设置,但是当使用 localhost 时,我真的对 Firefox 对这种情况的解释不感兴趣——这应该只是运行。我怎样才能让它工作?我需要不同的网络服务器、不同的设置吗?
github - 无论如何在 Github 页面上使用 SharedArrayBuffer 吗?
- 嗨,Chrome 已经实现了一些使用 SharedArrayBuffer 的要求,我们必须包含两个标头:
Cross-Origin-Opener-Policy:同源 Cross-Origin-Embedder-Policy:require-corp
- 有什么方法可以在 Github 上使用 SharedArrayBuffer 吗?我尝试过 netlify,但他们对带宽有限制。是否有任何类似于 GitHub 的托管静态站点可以允许我们自定义请求标头以便我们可以使用 SharedArrayBuffer?
javascript - Pyodide:ReferenceError:SharedArrayBuffer 未定义
我正在开发我最后一年的项目。开发基于浏览器的 IDE。我正在使用 Pyodide 进行编译。之前运行良好,但是现在尝试运行项目时,遇到了关于 SHAREdArrayBuffer() 的错误。我不知道是什么导致了这个问题。请任何人帮助我,我的最后一年的演讲是下周三,我的项目没有工作。
这是我正在使用它。
至少有另一种方法吗?是的,我正在使用网络工作者。我在 Edge、Firefox 和 Mozilla 上收到此错误。
ReferenceError: SharedArrayBuffer is not defined
我在本地主机上的网站上运行。是因为我的网站没有认证吗?