0

約30のAJAXリクエストを行う単一のWebワーカーがあり、各リクエストの後に、postMessageを使用してUIにメッセージを送信し、進行状況をログに記録します。例えば:

postMessage({type: "progress", name: "customers", message: "Success" }).

約10〜20のリクエスト(常に同じ数とは限りません)の後、次のエラーが表示されます。

Uncaught SyntaxError:引数が足りません

postMessage呼び出しを削除すると、すべてが正常に機能し、postMessage呼び出しを追加すると、Webワーカーはさらに少ない要求の後にエラーを出します。

データのタイプにも依存しているようです。postMessage呼び出しに文字列ではなくJSONオブジェクトが含まれていると、Webワーカーはすぐに終了します。

なぜこれが起こるのか誰かが知っていますか?

4

1 に答える 1

0

少なくとも私の場合、postMessageが短時間(ミリ秒)で複数回呼び出されると失敗することがわかりました。

500ミリ秒ごとにのみpostMessageを呼び出すと、問題が解決しました。

于 2011-05-06T06:56:31.010 に答える