BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース Visual Studio 2012 UIの応答性の向上

Visual Studio 2012 UIの応答性の向上

原文(投稿日:2012/07/26)へのリンク

 

Microsoftは継続してVisual Studio 2012の改善点について説明を続けている。Larry Sullivan氏は、Visual StudioプログラミングチームのDuke Kamstra氏とChuck England氏からの新しい情報としてVSツールボックスメインのUI描画スレッドの負荷をどのように軽減したのかについて提示した。

議論は、PerfWatsonユーティリティから取得したパフォーマンストレースのレビューから始まった。これでは、大きなプロジェクトのツールボックスにおいては、ソリューションが閉じられたときに“Visual Studio UIが30秒”ブロックすることがあることが示された。さらに、ツールボックスのパフォーマンスにより、WindowsフォームデザイナとWPFデザイナのようなデザイナにインパクトがあることがわかった。

この影響は、ツールボックスの描画の仕方によるものである。ツールボックスによって表示されたコンポーネントの一覧は、Microsoftと(存在する場合、)サードパーティーベンダーによって提供されるコンポーネントの一部として構成される。その他のユーザーコンポーネントのグループは、ユーザープロジェクトの中でユーザーが定義したものである。

コンポーネントの最初のグループには大きな変更はないが、2番目のグループはVisual Studioのソリューション検索で表示されるはずのすべてのコンポーネントが読み込まれている必要がある。パフォーマンストレースは、"ユーザーコントロールの検索は、ソリューションのサイズと複雑さに応じて遅くなる可能性がある"ことを示している。

以下の操作エリアはパフォーマンス改善のために見直された:

  • ソリューションの読み込み
  • デザイナのオープン
  • ビルド構成の変更(Debug/Release)
  • ソリューションのビルド
  • ソリューションのクローズ

 

最初の変更は、ツールボックスウィンドウが表示されていない時には、デザイナの更新にプロセッササイクルの消費を止めることであった。2番目の変更は、VSがツールボックスの変更するときのVS2010のアプローチからのシフトであった。VS2010は、ツールボックスウィンドウからすべての表示アイテムを削除してから、必要なコンポーネントを読み込み直していたが、VS2012では最後の更新から変更が必要になった(追加や削除)時、ツールボックスは単純に表示されたコンポーネントをベースにコンポーネントを表示するだけになっている。
 
アプリケーションで長時間の処理が必要になったとき、メインのUIスレッドに負荷がかかっていた。開発チームは、このスレッドの応答性を向上させるため、重い処理を移動することにした。
 
開発者は大幅な改善があったと主張しているが、いくつかの提示された数値は残念ながらVS2008、VS2012そして早期ビルドのVS2012との比較を提示していない。 アーキテクチャの変更は印象的な響きだが、改善を定量化することは難しい。

 

 

この記事に星をつける

おすすめ度
スタイル

特集コンテンツ一覧

BT