我正在寫一個簡單的JavaScript應用程序,它在HTML5 canvas
元素中生成Mandlebrot set分形。生成圖形的算法很容易並行化,所以我使用WebWorkers將屏幕切割成更易於管理的塊。當我產生大量WebWorkers時,我遇到了一些問題,但它似乎是瀏覽器特定的:在Chrome/Firefox中產生大量Web工作者
Chrome:在32到64個WebWorkers之間生成殺死頁面。奇怪的部分是WebWorkers在完成執行後似乎不會被破壞。例如,如果我用32個WebWorkers運行一次模擬,我沒有任何問題,但是如果我重新運行模擬(不重新加載頁面),頁面就會死亡。
火狐:看來Firefox的產卵一定數量WebWorkers後只是放棄,這是小於32的WebWorkers設定數量的完成,剩下的好像在某個無人過問狀態存在,永不完執行。我在Firebug的錯誤控制檯中沒有任何輸出。
Safari瀏覽器: Safari是唯一的瀏覽器,似乎完美派生大量的WebWorkers。這裏沒有問題。
IE:誰在乎?
有沒有人有解決任何這些瀏覽器的具體問題,或至少知道是什麼導致這些問題?
工人(因爲這些背景腳本在這裏被稱爲)相對較重,並不打算大量使用。 - > [source](http://dev.w3.org/html5/workers/#scope) – williamC 2013-02-22 17:03:35
看起來好像不同的瀏覽器達到了你似乎已經發現的不同的限制。 [相關問題在這裏。](http://stackoverflow.com/questions/9339892/does-a-firefox-workers-limit-exist) – 2013-02-22 17:05:50
你能鏈接到你的頁面嗎?這聽起來像你的工人沒有終止或什麼..... – 2013-02-23 05:59:10