微软表示IE9有并行JavaScript呈现和执行

The new JavaScript engine takes advantage of multiple CPU cores through Windows to interpret, compile, and run code in parallel. - http://technet.microsoft.com/en-us/library/gg699435.aspx

The Chakra engine interprets, compiles, and executes code in parallel and takes advantage of multiple CPU cores, when available. - http://msdn.microsoft.com/en-us/ie/ff468705.aspx

等等,什么?!? 这是否意味着我们已经在IE9中实现了多线程并行JavaScript代码执行(网络工作者之外)?

我认为这只是一个糟糕的营销噱头,但希望看到更多的信息。 也许它们意味着不同的浏览器窗口/选项卡/进程可以使用多个CPU?


结论主要基于评论,因此作为社区维基答案提供,以便这个问题以实际答案结束:

微软很可能意味着(i)解释和/或运行的单独任务; 和(ii)编译并行发生。 他们很可能已经应用了像Sun的老式HotSpot JVM这样的技术,以便Javascript虚拟机在第一时间解释代码,因为它可以立即开始执行。 它也可以编译任何看起来经常使用的代码,以获得好处。 它甚至可能有不同级别的编译器优化,它会慢慢拨号。 在这种情况下,它可能会使用多个内核来解释或运行一段代码,同时还编译任意许多其他代码,甚至在重新编译和更好地优化正在运行的同一段代码时。

但是,在技术层面上,您也可以执行静态分析,以确定回调在状态方面的相互独立性,并在触发事件促使他们这样做时允许这些回调并行执行。 通过这种方式,一个Javascript虚拟机可以实际解释/运行代码,而不会影响语言的语义连续性。 这样的系统在逻辑上与超标量CPU的操作相似,尽管更大的移除和更大的复杂性。

链接地址: http://www.djcxy.com/p/7587.html

上一篇: Microsoft says IE9 has Parallel Javascript Rendering and Execution

下一篇: Inherit/Extend CSS properties onto another element