解析Web Worker中的XML

时间:2012-02-03 18:52:38

标签: xml dom web-worker

我知道Web Worker规范说“无法访问DOM,因为DOM不是线程安全的”。虽然我可以看到这对于Web工作者和HTML页面DOM来说是合乎逻辑的,但是当考虑从XmlHttpRequest调用解析XML时,它实际上是非常严格的 - 毕竟,该调用的基本处理是异步的,因此对前台线程几乎没有影响,它是解析XML会减慢前台线程的速度(处理XML应用程序时)。

除了在Javascript中构建我自己的XML解析器(我不会使用XPCOM路由!)以解析Web Worker中的XML之外,还有其他方法吗?

1 个答案:

答案 0 :(得分:13)

嗯 - 几小时后回答自己 - 但这可能是一条对人们非常有用的信息:

有一个完全用javascript编写的开源,全功能XML解析器 - 它在Web Workers中运行良好:

XML-JS

基本上,您只需要在您的worker中包含tinyxmlsax.js和tinyxmlw3cdom.js,然后按照文档使用W3C DOM。

只需很少的按摩,我就可以使用正常的DOMParser(在前台运行时)和xmljs解析器。

显然它的速度较慢 - 但这确实不是太大的问题 - 毕竟,你是在后台运行它!