UIをもっさりさせないsetIntervalやsetTimeoutとは

元ネタは

▼Lessons from Gmail: Using Timers Effectively

 http://ajaxian.com/archives/lessons-from-gmail-using-timers-effectively

Gmailのモバイル版の開発者の一人Neil Thomas 氏が、Google Code のディスカッションで書いたことが載っています。

高フリクエンシーのタイマーと低フリクエンシーのタイマー、インターフェイスをもっさりさせないためには、どっちを使えばいい?という内容です。

実際にGmail for Mobile を開発しながら調べたとのことです。

詳細はリンク先を見ていただくとしまして、回答のサマリーとしては

  • 1秒後などの長いタイマーは、多重起動してもほとんどUIをもっさりさせることはない
  • 100ms~200msのタイマーは、かなりインターフェイスに影響を与える
  • なので、長めのタイマーを必要十分に使うというアプローチが最適
  • ただ、やはり細かい間隔のタイマーが必要な場合は、グローバルなタイマーを一つ用意するだけにとどめて、それを使いまわすのがいい。
  • 細かいタイマーをたくさん使うのはとにかくやめたほうがいい

という感じでした。

確かにタイマーって、とりあえず使ってしまいがちだし、間隔も適当にふってしまいがちです。

なんか作ったモノの動作が遅いなーと感じている方は、チェックしてみては、いかが、かと。

お悩みの方へ。一回のご相談で解決することもあります
ラウンドナップ・コンサルティングへのお問合せ方法 お電話でのご相談もお気軽に。[048-234-3361](10〜16 土日祝日除)全国対応 24時間受付 お問合せメールフォーム