我可以在 iOS 上使用 SharedArrayBuffer 吗?

Can I use SharedArrayBuffer on iOS?

根据 Mozilla 的说法,there is no browser on iOS supporting the cross-origin-opener-policy, which is one of the security requirements for enabling a SharedArrayBuffer. 这是否意味着我不能将 SharedArrayBuffer 用于 iOS 平台上的任何网络应用程序?

不幸的是,SharedArrayBuffer 由于 Spectre / Meltdown 问题被禁用,所以不,你不能使用它:

https://caniuse.com/#feat=sharedarraybuffer

实际上它在 Caniuse 网站上说您可以启用该功能,但我没有找到这方面的文档 re: Safari

您现在可以在 Safari 中启用一个标志:

Resurrected SharedArrayBuffer and Atomics behind a flag (JSC_useSharedArrayBuffer=1) (r269531)

https://trac.webkit.org/changeset/269531/webkit/

要完成 user3325025 and Alexander 的回答,您可以通过在终端中键入以下命令打开启用了 SharedArrayBuffer 的 Safari:

__XPC_JSC_useSharedArrayBuffer=1 open -a "Safari"

以下是支持 SharedArrayBuffer 的浏览器列表:https://caniuse.com/sharedarraybuffer

Safari Technology Preview 最近宣布它可以在页面跨源隔离时启用 SharedArrayBuffer。 https://webkit.org/blog/11975/release-notes-for-safari-technology-preview-133/

启用跨源隔离有一定的要求。在此处了解更多信息:https://web.dev/coop-coep/

如果用户已升级到 Safari 15.2,SharedArrayBuffer 可以启用 COOP 和 COEP headers。参见 this documentation page