gpt4 book ai didi

javascript - iframe 是否与所有者在同一线程上运行?

转载 作者:可可西里 更新时间:2023-11-01 02:23:02 26 4
gpt4 key购买 nike

我有 CPU 密集型工作要做,我不想降低用户体验。由于 web workers ( http://ejohn.org/blog/web-workers/ ) 是一项新功能,并非所有浏览器都支持,我想打开一个带有 HTML + JS 的 iframe,它将完成所有肮脏的工作,并使用一些跨域通信来传递结果.不幸的是,我注意到 iframe 的所有者受到 iframe 窗口 CPU 工作的影响。

此行为是否符合设计?有办法解决这个问题吗?

最佳答案

一种模拟多线程的方法是让 Javascript 函数做一些工作,然后用相同的函数调用 setTimeout;然后该函数将做一些工作并再次调用 setTimeout,这个循环将永远持续下去,或者直到他们关闭框架或您发出停止工作的信号。 MDN has a good example of how to set this up.

在超时之间,Javascript 不应消耗任何处理器时间。您可能需要稍微尝试一下,看看您的超时应该有多长——1 毫秒可能太短了,但 1 秒绝对太长了。另一个因素是运行该作业的计算机的处理器速度,因此您可能需要在客户端通过 Javascript 进行一些伪基准测试,然后才能确定每次延迟多长时间。

关于javascript - iframe 是否与所有者在同一线程上运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1449265/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com