Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Three.js和网络工作者的怪异行为_Javascript_Three.js_Webgl_Web Worker - Fatal编程技术网

Javascript Three.js和网络工作者的怪异行为

Javascript Three.js和网络工作者的怪异行为,javascript,three.js,webgl,web-worker,Javascript,Three.js,Webgl,Web Worker,我在three.js应用程序中使用web workers时遇到了一些奇怪的情况。在第一次加载新页面时,它看起来很好 但在重新加载几页(比如20页)之后,只有在web工作人员执行时,才会发生这种情况: 右上角是我的立方体!出于某种原因,它似乎在重新加载20次左右后放大 但是如果我把屏幕的尺寸调整得更小,立方体就会弹回到中间。我检查了一下屏幕的高宽比在立方体会弹回来时是否总是相同的,而不是 此外,如果我继续重新加载页面,它会到达立方体消失的位置,最终屏幕变为空白。但是,然后我在一个新窗口中重新加

我在three.js应用程序中使用web workers时遇到了一些奇怪的情况。在第一次加载新页面时,它看起来很好

但在重新加载几页(比如20页)之后,只有在web工作人员执行时,才会发生这种情况:

右上角是我的立方体!出于某种原因,它似乎在重新加载20次左右后放大

但是如果我把屏幕的尺寸调整得更小,立方体就会弹回到中间。我检查了一下屏幕的高宽比在立方体会弹回来时是否总是相同的,而不是

此外,如果我继续重新加载页面,它会到达立方体消失的位置,最终屏幕变为空白。但是,然后我在一个新窗口中重新加载页面,一切都恢复正常

起初,我认为这可能与web workers没有正确终止有关,所以我设置了一个
beforeunload
事件处理程序,该处理程序会杀死我所有的workers,但它不起作用。所以我不确定这里发生了什么。救命啊


我使用的是chrome 24,在firefox 18中似乎没有问题。

我之前也遇到过这个问题-这是chrome/Webkit中的一个bug。然而,对于Chrome 25 beta版,我再也看不到它了

以下是一些参考资料: