2011-09-14 15 views
2

Memory Leak When Pulling JSON from WEBで説明したのと同じ問題が発生しています。javascript jsonp memory leak

jsonp ajaxリクエストを定期的に行う機能があります。私の関数は、setIntervalによってトリガされる別の関数によって呼び出されます。

IE、Safari、FireFoxのすべての試みでメモリリークが発生しました。 Safariスクリプトデバッガに表示される何かは、Ajaxリクエストに対する各レスポンスは、スクリプトオブジェクトがクリーンアップされていないかのように、スクリプトデバッガウィンドウのドロップダウンリストにスクリプトとしてリストされていることです。

私はjquery 1.6.2を使用しています。これは「長期間」のリークであり、数分間実行した後はクリーンアップされません。

何が原因なのですか?

request: function() 
    { 
     $.ajax({ 
      url: <myurl> 
      dataType: "jsonp", 
      jsonp: "jsoncallback", 
      timeout: 5000, 
      cache: false, 

      beforeSend: function (xhr) 
      { 
      }, 

      success: function (data, status, xhr) 
      { 
      }, 

      error: function (xhr, status, error) 
      { 
      }, 

      complete: function (req, status) 
      { 
      } 
     }); 
    } 
    ... 
    setInterval(request, 100); 

答えて

1

100ミリ秒ごとにajaxリクエストを送信するという事実で十分です。

注意してください、setInterval(request、); - 100は秒を意味するのではなく、ミリ秒を意味します。 1秒= 1000ミリ秒

+0

ありがとうございます、私はそのレートでリクエストを送信していることを認識しています。アプリケーションで必要です。私はサーバー側をコントロールしており、そのような応答性を期待しています。 –

+0

@トーマスハミルトン:何を教えてくれますか? – genesis