Loading ...
Sorry, an error occurred while loading the content.

Lessons from Gmail: Using Timers Effectively

Expand Messages
  • Fadjar Nurswanto
    Barusan baca di ajaxian tentang subject diatas. http://ajaxian.com/archives/lessons-from-gmail-using-timers-effectively Singkatnya, bila penggunaan
    Message 1 of 7 , Jul 9, 2009
    • 0 Attachment
      Barusan baca di ajaxian tentang subject diatas.
      http://ajaxian.com/archives/lessons-from-gmail-using-timers-effectively

      Singkatnya,
      bila penggunaan setTimeout/setInterval delay 1 detik atau lebih dibuat
      lebih dari 1 kali bahkan sampai 100 kali tidak mempengaruhi performance
      secara signifikan. Tetapi akan berbeda bila delay 100ms s.d. 200ms atau
      mereka sebut dengan "high frequency".

      Dan penulis membuat sample script-nya sebagai berikut:

      // The time, in ms, that must be "missed" before we
      // assume the app was put to sleep.

      var THRESHOLD = 10000;
      var lastTick_;

      detectWakeFromSleep_ = function() {
      var now = new Date().getTime();
      var delta = now - this.lastTick_;
      if (delta> THRESHOLD) {
      // The app probably just woke up after being asleep.
      fetchUpdatedData();
      }
      lastTick_ = now;
      };

      Yang menjadi pertanyaan saya adalah:
      1. Apakah penggunaannya dengan perintah
      setTimeout(detectWakeFromSleep,100) atau
      setInterval(detectWakeFromSleep,100)?
      2. Dimana meletakkan proses lainnya ?

      Maaf kalau kepanjangan ...

      Terima kasih,
      Fadjar Nurswanto
      http://blog.rindudendam.net
    • Fadjar Nurswanto
      Barusan baca di ajaxian tentang subject diatas. http://ajaxian.com/archives/lessons-from-gmail-using-timers-effectively Singkatnya, bila penggunaan
      Message 2 of 7 , Jul 9, 2009
      • 0 Attachment
        Barusan baca di ajaxian tentang subject diatas.
        http://ajaxian.com/archives/lessons-from-gmail-using-timers-effectively

        Singkatnya,
        bila penggunaan setTimeout/setInterval delay 1 detik atau lebih dibuat
        lebih dari 1 kali bahkan sampai 100 kali tidak mempengaruhi performance
        secara signifikan. Tetapi akan berbeda bila delay 100ms s.d. 200ms atau
        mereka sebut dengan "high frequency".

        Dan penulis membuat sample script-nya sebagai berikut:

        // The time, in ms, that must be "missed" before we
        // assume the app was put to sleep.

        var THRESHOLD = 10000;
        var lastTick_;

        detectWakeFromSleep_ = function() {
        var now = new Date().getTime();
        var delta = now - this.lastTick_;
        if (delta> THRESHOLD) {
        // The app probably just woke up after being asleep.
        fetchUpdatedData();
        }
        lastTick_ = now;
        };

        Yang menjadi pertanyaan saya adalah:
        1. Apakah penggunaannya dengan perintah
        setTimeout(detectWakeFromSleep,100) atau
        setInterval(detectWakeFromSleep,100)?
        2. Dimana meletakkan proses lainnya ?

        Maaf kalau kepanjangan dan noob banget ...

        Terima kasih,
        Fadjar Nurswanto
        http://blog.rindudendam.net
      • Youppie Arliansyah
        Kalau baca blog yang jadi inspirasi si penulis (http://googlecode.blogspot.com/2009/07/gmail-for-mobile-html5-series-using.html), kira-kira code javascriptnya
        Message 3 of 7 , Jul 9, 2009
        • 0 Attachment
          Kalau baca blog yang jadi inspirasi si penulis
          (http://googlecode.blogspot.com/2009/07/gmail-for-mobile-html5-series-using.html),
          kira-kira code javascriptnya jadi begini:



          var highFrequencyTimerId_ = window.setInterval(detectWakeFromSleep_, 100);

          // The time, in ms, that must be "missed" before we
          // assume the app was put to sleep.
          var THRESHOLD = 10000;

          var lastTick_;
          detectWakeFromSleep_ = function() {
          var now = new Date().getTime();
          var delta = now - this.lastTick_;
          if (delta> THRESHOLD) {
          // The app probably just woke up after being asleep.
          fetchUpdatedData();
          }
          lastTick_ = now;
          };




          2009/7/9 Fadjar Nurswanto <mailinglist@...>:
          > Barusan baca di ajaxian tentang subject diatas.
          > http://ajaxian.com/archives/lessons-from-gmail-using-timers-effectively
          >
          > Singkatnya,
          > bila penggunaan setTimeout/setInterval delay 1 detik atau lebih dibuat
          > lebih dari 1 kali bahkan sampai 100 kali tidak mempengaruhi performance
          > secara signifikan. Tetapi akan berbeda bila delay 100ms s.d. 200ms atau
          > mereka sebut dengan "high frequency".
          >
          > Dan penulis membuat sample script-nya sebagai berikut:
          >
          > // The time, in ms, that must be "missed" before we
          > // assume the app was put to sleep.
          >
          > var THRESHOLD = 10000;
          > var lastTick_;
          >
          > detectWakeFromSleep_ = function() {
          >  var now = new Date().getTime();
          >  var delta = now - this.lastTick_;
          >  if (delta> THRESHOLD) {
          >    // The app probably just woke up after being asleep.
          >    fetchUpdatedData();
          >  }
          >  lastTick_ = now;
          > };
          >
          > Yang menjadi pertanyaan saya adalah:
          > 1. Apakah penggunaannya dengan perintah
          >    setTimeout(detectWakeFromSleep,100) atau
          >    setInterval(detectWakeFromSleep,100)?
          > 2. Dimana meletakkan proses lainnya ?
          >
          > Maaf kalau kepanjangan dan noob banget ...
          >
          > Terima kasih,
          > Fadjar Nurswanto
          > http://blog.rindudendam.net
          >
          >
          >
          >
          >
          >
          > ------------------------------------
          >
          > Yahoo! Groups Links
          >
          >
          >
          >



          --
          Youppie
        • Fadjar Nurswanto
          Sebelumnya mohon maaf double post. SMTP local meracau. Terima kasih mas You. Dan telah terjawab sendiri untuk pertanyaan nomer 2 setelah nyoba sendiri. Fadjar
          Message 4 of 7 , Jul 9, 2009
          • 0 Attachment
            Sebelumnya mohon maaf double post. SMTP local meracau.

            Terima kasih mas You. Dan telah terjawab sendiri untuk pertanyaan nomer 2 setelah nyoba sendiri.

            Fadjar Nurswanto
            http://blog.rindudendam.net

            Youppie Arliansyah wrote:
            > Kalau baca blog yang jadi inspirasi si penulis
            > (http://googlecode.blogspot.com/2009/07/gmail-for-mobile-html5-series-using.html),
            > kira-kira code javascriptnya jadi begini:
            >
            >
            >
            > var highFrequencyTimerId_ = window.setInterval(detectWakeFromSleep_, 100);
            >
            == cut ==
          • herdian ferdianto
            Dear Pak Fadjar Tergantung skrip anda sih, cuman beda yang jelas adalah: setTimeout - hanya menjalankan sekali aja setInterval - akan dijalankan secara
            Message 5 of 7 , Jul 10, 2009
            • 0 Attachment
              Dear Pak Fadjar

              Tergantung skrip anda sih,
              cuman beda yang jelas adalah:
              setTimeout -> hanya menjalankan sekali aja
              setInterval -> akan dijalankan secara interval (berkali2)

              //ngeprint di firebug console sekali
              setTimeout( function() { console.log( "run" ); }, 1000 );

              //ngeprint di firebug console berkali2 interval 1 detik
              var handle = setInterval function() { console.log( "run" ); }, 1000 );

              //stop interval
              clearInterval( handle );


              2009/7/9 Fadjar Nurswanto <mailinglist@...>


              Barusan baca di ajaxian tentang subject diatas.
              http://ajaxian.com/archives/lessons-from-gmail-using-timers-effectively

              Singkatnya,
              bila penggunaan setTimeout/setInterval delay 1 detik atau lebih dibuat
              lebih dari 1 kali bahkan sampai 100 kali tidak mempengaruhi performance
              secara signifikan. Tetapi akan berbeda bila delay 100ms s.d. 200ms atau
              mereka sebut dengan "high frequency".

              Dan penulis membuat sample script-nya sebagai berikut:

              // The time, in ms, that must be "missed" before we
              // assume the app was put to sleep.

              var THRESHOLD = 10000;
              var lastTick_;

              detectWakeFromSleep_ = function() {
              var now = new Date().getTime();
              var delta = now - this.lastTick_;
              if (delta> THRESHOLD) {
              // The app probably just woke up after being asleep.
              fetchUpdatedData();
              }
              lastTick_ = now;
              };

              Yang menjadi pertanyaan saya adalah:
              1. Apakah penggunaannya dengan perintah
              setTimeout(detectWakeFromSleep,100) atau
              setInterval(detectWakeFromSleep,100)?
              2. Dimana meletakkan proses lainnya ?

              Maaf kalau kepanjangan ...

              Terima kasih,
              Fadjar Nurswanto
              http://blog.rindudendam.net




              --
              ferdhie
              http://m.ferdianto.com
            • Fadjar Nurswanto
              Terima kasih mas Ferdi. Bukan itu kok permasalahan saya, mas. Hanya berusaha memahami cara eksekusi pada script yang telah dicontohkan saja. Sudah terbantukan
              Message 6 of 7 , Jul 10, 2009
              • 0 Attachment
                Terima kasih mas Ferdi.

                Bukan itu kok permasalahan saya, mas.
                Hanya berusaha memahami cara eksekusi pada script yang telah dicontohkan
                saja. Sudah terbantukan oleh mas You.

                Dan lebih paham setelah mencoba sendiri untuk eksekusi proses-proses
                lainnya dengan rentang waktu yang berbeda-beda.

                Terima kasih,
                Fadjar Nurswanto
                http://blog.rindudendam.net

                herdian ferdianto wrote:
                > Dear Pak Fadjar
                >
                > Tergantung skrip anda sih,
                > cuman beda yang jelas adalah:
                > setTimeout -> hanya menjalankan sekali aja
                > setInterval -> akan dijalankan secara interval (berkali2)
                >
                > //ngeprint di firebug console sekali
                > setTimeout( function() { console.log( "run" ); }, 1000 );
                >
                > //ngeprint di firebug console berkali2 interval 1 detik
                > var handle = setInterval function() { console.log( "run" ); }, 1000 );
                >
                > //stop interval
                > clearInterval( handle );
                >
                >
                > 2009/7/9 Fadjar Nurswanto <mailinglist@...>
                >
                >>
                >> Barusan baca di ajaxian tentang subject diatas.
                >> http://ajaxian.com/archives/lessons-from-gmail-using-timers-effectively
                >>
                >> Singkatnya,
                >> bila penggunaan setTimeout/setInterval delay 1 detik atau lebih dibuat
                >> lebih dari 1 kali bahkan sampai 100 kali tidak mempengaruhi performance
                >> secara signifikan. Tetapi akan berbeda bila delay 100ms s.d. 200ms atau
                >> mereka sebut dengan "high frequency".
                >>
                >> Dan penulis membuat sample script-nya sebagai berikut:
                >>
                >> // The time, in ms, that must be "missed" before we
                >> // assume the app was put to sleep.
                >>
                >> var THRESHOLD = 10000;
                >> var lastTick_;
                >>
                >> detectWakeFromSleep_ = function() {
                >> var now = new Date().getTime();
                >> var delta = now - this.lastTick_;
                >> if (delta> THRESHOLD) {
                >> // The app probably just woke up after being asleep.
                >> fetchUpdatedData();
                >> }
                >> lastTick_ = now;
                >> };
                >>
                >> Yang menjadi pertanyaan saya adalah:
                >> 1. Apakah penggunaannya dengan perintah
                >> setTimeout(detectWakeFromSleep,100) atau
                >> setInterval(detectWakeFromSleep,100)?
                >> 2. Dimana meletakkan proses lainnya ?
                >>
                >> Maaf kalau kepanjangan ...
                >>
                >> Terima kasih,
                >> Fadjar Nurswanto
                >> http://blog.rindudendam.net
                >>
              • Fadjar Nurswanto
                Terima kasih mas Ferdi. Bukan itu kok permasalahan saya, mas. Hanya berusaha memahami cara eksekusi pada script yang telah dicontohkan saja. Sudah terbantukan
                Message 7 of 7 , Jul 10, 2009
                • 0 Attachment
                  Terima kasih mas Ferdi.

                  Bukan itu kok permasalahan saya, mas.
                  Hanya berusaha memahami cara eksekusi pada script yang telah dicontohkan
                  saja. Sudah terbantukan oleh mas You.

                  Dan lebih paham setelah mencoba sendiri untuk eksekusi proses-proses
                  lainnya dengan rentang waktu yang berbeda-beda.

                  Terima kasih,
                  Fadjar Nurswanto
                  http://blog.rindudendam.net

                  herdian ferdianto wrote:
                  > Dear Pak Fadjar
                  >
                  > Tergantung skrip anda sih,
                  > cuman beda yang jelas adalah:
                  > setTimeout -> hanya menjalankan sekali aja
                  > setInterval -> akan dijalankan secara interval (berkali2)
                  >
                  > //ngeprint di firebug console sekali
                  > setTimeout( function() { console.log( "run" ); }, 1000 );
                  >
                  > //ngeprint di firebug console berkali2 interval 1 detik
                  > var handle = setInterval function() { console.log( "run" ); }, 1000 );
                  >
                  > //stop interval
                  > clearInterval( handle );
                  >
                  >
                  > 2009/7/9 Fadjar Nurswanto <mailinglist@...>
                  >
                  >>
                  >> Barusan baca di ajaxian tentang subject diatas.
                  >> http://ajaxian.com/archives/lessons-from-gmail-using-timers-effectively
                  >>
                  >> Singkatnya,
                  >> bila penggunaan setTimeout/setInterval delay 1 detik atau lebih dibuat
                  >> lebih dari 1 kali bahkan sampai 100 kali tidak mempengaruhi performance
                  >> secara signifikan. Tetapi akan berbeda bila delay 100ms s.d. 200ms atau
                  >> mereka sebut dengan "high frequency".
                  >>
                  >> Dan penulis membuat sample script-nya sebagai berikut:
                  >>
                  >> // The time, in ms, that must be "missed" before we
                  >> // assume the app was put to sleep.
                  >>
                  >> var THRESHOLD = 10000;
                  >> var lastTick_;
                  >>
                  >> detectWakeFromSleep_ = function() {
                  >> var now = new Date().getTime();
                  >> var delta = now - this.lastTick_;
                  >> if (delta> THRESHOLD) {
                  >> // The app probably just woke up after being asleep.
                  >> fetchUpdatedData();
                  >> }
                  >> lastTick_ = now;
                  >> };
                  >>
                  >> Yang menjadi pertanyaan saya adalah:
                  >> 1. Apakah penggunaannya dengan perintah
                  >> setTimeout(detectWakeFromSleep,100) atau
                  >> setInterval(detectWakeFromSleep,100)?
                  >> 2. Dimana meletakkan proses lainnya ?
                  >>
                  >> Maaf kalau kepanjangan ...
                  >>
                  >> Terima kasih,
                  >> Fadjar Nurswanto
                  >> http://blog.rindudendam.net
                  >>
                  >>
                  >>
                  >
                  >
                  >
                Your message has been successfully submitted and would be delivered to recipients shortly.