是否可以使用多线程执行Javascript函数

Is it possible to execute Javascript functions with multi-threads

本文关键字:Javascript 函数 执行 多线程 可以使 是否      更新时间:2024-04-01

可能重复:
JavaScript多线程

当我在浏览器中打开网页时,会启动多少个线程来渲染DOM并执行Javascript代码?

有可能用多线程执行Javascript函数吗?

您可以在现代浏览器中使用webworkers

http://www.html5rocks.com/en/tutorials/workers/basics/

简单的答案是否定的,不能用javascript运行多线程代码。

更长的答案是你可以模拟它。这个关于SO的问题可能会有所帮助:多线程JavaScript如何?

Javascript代码在单个线程中运行。您不能启动单独的线程,但您仍然可以使用异步函数来实现这一点,如setTimeOut和setInterval。

通常只有一个UI线程,但您可以在HTML5中与WebWorkers并行运行JS。

您可以将WebWorkers用于线程,但它不能与dom一起使用。您也可以尝试通过setInterval 来模拟它

人们有时使用的另一个想法是使用iframe。如果您的应用程序可以建模为一组iframe(如facebook),您就可以利用它。谷歌chrome对此进行了高度优化。每个帧中的Javascript在单独的执行上下文中执行,因此可以并行化。