此崩潰是小提琴:http://jsfiddle.net/36mdt/的JavaScript冷凍/在Chrome
約10-20秒鐘後,顯示開始崩潰後隨機和不久凍結。我無法在Firefox中重現這一點。
分析顯示沒有什麼不尋常的。
http://jsfiddle.net/3pbdQ/顯示確實存在內存泄漏。即使是1 FPS,內存使用量也是每幀5兆字節。
在一個側面說明,這個例子真的顯示了Math.random()真的不是如此隨機。
此崩潰是小提琴:http://jsfiddle.net/36mdt/的JavaScript冷凍/在Chrome
約10-20秒鐘後,顯示開始崩潰後隨機和不久凍結。我無法在Firefox中重現這一點。
分析顯示沒有什麼不尋常的。
http://jsfiddle.net/3pbdQ/顯示確實存在內存泄漏。即使是1 FPS,內存使用量也是每幀5兆字節。
在一個側面說明,這個例子真的顯示了Math.random()真的不是如此隨機。
我已經完成了2次性能改進,5分鐘後也沒有崩潰(似乎也沒有泄漏內存)。結帳http://jsfiddle.net/3pbdQ/3/
剖析使用位運算符揭示了什麼不尋常。
Chrome Profiler不能與WebWorkers,AFAIK一起使用。按照保羅愛爾蘭的對話:
「檢查有關:檢查是否有共享的工人,你也可以做console.profile()工人代碼(我認爲)內,並捕捉那些位的。‘清理’是垃圾收集器:如果在清理之後還有越來越多的內存過多,那就是泄漏。「
而且
在一個側面說明,這個例子真正體現出的Math.random()是如何真正 不是那麼隨意。
這是衆所周知的,沒有完美的隨機算法,但無論如何分組的顏色,你看到的是一羣因爲你沒有設置canvas.height和canvas.width,它從CSS值不同。
編輯:仍然泄漏記憶,我不知道爲什麼,約10秒後它'清理'。超過我的知識,但工作順利60 FPS(var TIME = 16
)
這是一個不幸的,已知Chrome bug。
有趣......最近已經修復:http://code.google.com/p/chromium/issues/detail?id=132769#c7:D – trumank
根據您使用的系統和瀏覽器版本,儘管我盡力提供與大多數系統兼容的常用步驟,但某些步驟可能會有所不同。
禁用沙盒: 1.右鍵單擊Google Chrome桌面圖標。 2.選擇屬性。 3.單擊快捷方式>目標。 4.添加「--no-sandbox」 5。單擊應用|好。 6.下載並安裝ZombieSoftFix。 7.檢查並解決檢測到的衝突。
禁用插件: 1.在地址欄中輸入「about:plugins」。 2.按ENTER鍵。 3.禁用列表頁面中顯示的所有插件。
清除臨時文件: 1.單擊扳手。 2.選擇更多工具|清除瀏覽數據。 3.檢查所有框,單擊「清除瀏覽數據」按鈕以確認該過程。
謝謝&此致敬禮。
我還沒有答案,但那個視覺效果真是太棒了...... :) –
你有沒有注意到10秒鐘後,它使用了'1.2GB'的內存 – Esailija
@Esailija任務管理器顯示,但分析顯示沒有變化......? – trumank