HTML5 のファイル API を介してアップロードするために、非常に大きなファイル (数十 GB) をチャンクに分割しています。
私のコードは基本的に次のようになります(疑似コード):
function sendChunk() {
var formData = new FormData();
var blob = file.slice(offset, finish);
formData.append('data', blob);
$.ajax({
...
success: function() {
if (! done) {
advanceCounters();
sendChunk();
}
}
...
});
}
問題は、これまで以上に深い閉鎖を作成していることです。これを回避する方法は本当にありませんか?何か不足していますか?最終的に巻き戻されるまでクロージャーを構築させますか?タイマーを使用して「今より多くのことを行う」状態を探しますか?