Adobe AirでAjaxリクエスト(jQuery)を作成し、外部URLから画像を読み込むたびに、プライベートメモリの使用量が増加します。画像のキャッシュを無効にしたり、キャッシュされたファイルを削除したりする方法はありますか?
例:
$.ajax({
type: 'get',
url: someurl,
success: function(res){
$('#mydiv').attr('src', res);
}
});
Adobe AirでAjaxリクエスト(jQuery)を作成し、外部URLから画像を読み込むたびに、プライベートメモリの使用量が増加します。画像のキャッシュを無効にしたり、キャッシュされたファイルを削除したりする方法はありますか?
例:
$.ajax({
type: 'get',
url: someurl,
success: function(res){
$('#mydiv').attr('src', res);
}
});
通常、ガベージコレクタは、未使用の変数、またはスコープの最後にある変数に割り当てられたメモリを解放します。ここでres
は、コールバック関数の最後にパージされます。
とにかく、これは最も一般的なブラウザで起こることです。Adobe Airで何が起こるかはよくわかりませんが、IIRCはWebKitを使用しているため、ChromeやSafariのように動作するはずです...
そうでない場合は、null
未使用の変数に割り当てるガベージコレクターを明示的にトリガーしてみてください。
...
success: function(res){
$('#mydiv').attr('src', res);
res = null;
}
res
とにかく、画像の属性のの値をまだsrc
コピーしているので、メモリ使用量は増加することを忘れないでください。とにかく、これは明らかなはずです。