これがAngularJSの$apply()や$digest()が低速な理由のひとつか?
昨日書いた記事 「琴線探査: Dr. GlebのAngularアプリ最適化TIPSまとめ」 に、try-catchがあるとV8では最適化されないため処理が遅くなると書いた。
今日は自分で書いたアプリをプロファイルしてみた。このように、$apply()や$digest()に相当な時間がかかっていることが分かった。
これは予想通りだったが、驚いたのは$apply()や$digest()でtry-catchを使っているらしいことだ。
「Not optimized: TryCatch Statement」とツールチップが出ている。ひょっとすると、これが$apply()や$digest()が低速な理由のひとつなのかもしれない。
だとすると、かなり根本的なレベルで高速化できていないことになる…内部的にtry-catchを使わないようにできないのかなぁ(´・ω・`)
今日は自分で書いたアプリをプロファイルしてみた。このように、$apply()や$digest()に相当な時間がかかっていることが分かった。
これは予想通りだったが、驚いたのは$apply()や$digest()でtry-catchを使っているらしいことだ。
「Not optimized: TryCatch Statement」とツールチップが出ている。ひょっとすると、これが$apply()や$digest()が低速な理由のひとつなのかもしれない。
だとすると、かなり根本的なレベルで高速化できていないことになる…内部的にtry-catchを使わないようにできないのかなぁ(´・ω・`)
コメント
コメントを投稿