使用GWT模块加载Web-Worker线程的最简单方法是什么?
我不是指在GWT中获得对Web-Worker的支持(有用于此的库),而是如何生成用于加载到Web工作者的GWT模块?
我怀疑我需要一个特殊的链接器 - 是否有可用的地方?
答案 0 :(得分:7)
看看http://code.google.com/p/speedtracer/source/browse/trunk/src/client/ui/src/com/google/gwt/webworker/ 我没有深入挖掘,但似乎是你正在寻找的“特殊链接器”(链接器然后被用于SpeedTracer的“hintlet引擎”和“破碎”模块)
答案 1 :(得分:4)
有一个名为gwt-ns的库,其中包含web worker。 以下链接是使用它的示例。 http://extremelysatisfactorytotalitarianism.com/blog/?p=645
<强>更新强> gwt-ns的作者发布了一条说明,他自2010年以来停止了开发,所以它与最近的GWT(如2.6.1或更高版本)不兼容
注意(2014年2月4日):gwt-ns自2010年6月以来未被触及 我的理解是Web Worker支持不起作用 任何最新版本的GWT。这有点预期,因为它必须 达到相当远的GWT编译器工作,并将不得不 随着编译器设计的改变而进行更改。 其他模块也可能已过时,因为这些功能的排列选择需要根据浏览器添加进行调整 支持或移动支持从前缀到完整。有些事情可能还会 不小心工作。 随意使用代码,但要预先警告。我不再做任何GWT开发,所以如果你想让工人工作 再次使用gwt-ns作为基础,你需要分叉代码并启动一个 新项目(幸运的是Apache 2.0许可证让你很容易)。
答案 2 :(得分:2)
您可以尝试在GitHub上发布我的gwtwwlinker项目:https://github.com/tomekziel/gwtwwlinker
它允许您将单独的模块编译为Web worker,专用链接器可以消除常见的$wnd
和$doc
依赖项。
答案 3 :(得分:0)
Manfred Tremmel已从Google Speedtest应用程序中获取了核心代码,并将其放在单独的存储库extended globbing中。我在gwt-webworker处添加了一个非常简单的示例代码。该代码适用于最新的GWT 2.8.1版本。