Web Worker importScripts 方法可以访问主线程缓存的脚本吗?

发布于 2024-12-28 03:42:29 字数 214 浏览 0 评论 0原文

实际上有多个问题:

  • importScripts 是否始终使用 GET 请求加载脚本,或者是否可以缓存脚本?

  • importScripts 可以访问主线程或浏览器上下文中缓存的脚本吗?

  • worker可以缓存脚本供主线程访问吗? (正好相反)

Multiple questions actually:

  • Will importScripts always load the scripts with a GET request or can it cache scripts?

  • Can importScripts access scripts cached in the main thread or browser context?

  • Can the worker cache scripts for the main thread to access? (simply the other way around)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

何以畏孤独 2025-01-04 03:42:29
  1. 如果您正确指定“Expires”或“Cache-control”等 http 缓存标头,importScripts 将不会再次加载脚本,请参阅Google 推荐 相关内容

  2. 之间有一种“网关过滤器”线程,允许布尔值、字符串等原语通过,但不允许对象/函数通过。如果您通过 XHR 在主线程中将脚本作为字符串加载,您可能能够将其发送到工作线程并在那里进行评估。

  3. 查看答案#1

  1. importScripts will not load the script again if you specify http cache headers like 'Expires' or 'Cache-control' properly, see google recomendations about that

  2. There is a kind of 'gateway filter' between threads, that allows primitives like booleans, strings to go through but not objects/functions. If you load your script via XHR as a string in main thread, you'll probably be able to send it to the worker thread and eval there.

  3. See the answer #1

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文