Visual Studio 2015 Update 3 および .NET Core 1.0 をリリース

 

本記事は、マイクロソフト本社の The Visual Studio Blog の記事を抄訳したものです。【元記事】 Visual Studio 2015 Update 3 and .NET Core 1.0 Available Now 2016/6/27

 

Visual Studio 2015 Update 3Team Foundation Server 2015 Update 3 (英語).NET Core 1.0 (英語)、ASP.NET Core 1.0 の最終リリースが公開されました。

 

ここではまず .NET Core と ASP.NET Core についてご説明します。こちらの .NET ブログ (英語)WebDev ブログ (英語) をまだお読みでない方のためにご説明すると、.NET Core はクロス プラットフォームに対応したオープン ソースのモジュール型 .NET プラットフォームであり、Windows、Mac、Linux 向けの先進的な Web アプリやマイクロサービス、ライブラリ、コンソール アプリケーションを作成することができます。今回のリリースには .NET Core と ASP.NET Core のランタイムとライブラリ、新しいコマンド ライン ツール群、.NET Core プロジェクトとの連携が可能になる Visual Studio と Visual Studio Code の拡張機能が含まれています。機能は、Visual Studio の次期メジャー リリースである Visual Studio “15” のリリース レベルの品質です。

 

VS Update 3 については、いつものようにこの記事の中で概要をご紹介することもできますが、この数か月間でリリース ノート (英語)既知の問題 (英語) のページを充実させてきたのでぜひそちらをご参照ください。わかりやすく詳細な内容になっています。その代わり、この記事ではそうした変更点を説明するのではなく、VS のメモリに関する問題について詳細にお伝えしたいと思います。

 

この問題は、2 社のお客様で実際に起こったものです。両社とも規模が非常に大きく、成功を収めており、VS を長年使用しています。両社からは、数百個のプロジェクトと膨大な数のファイルを含むソリューション ファイルを処理するときに応答性と安定性について問題があるというご報告をいただいていました。このうちの 1 社では、500 個のプロジェクト (すべて .NET) を含むソリューション ファイルを使用しており、ソリューションを開いてから 5 ~ 60 分で VS がハングしたりクラッシュしたりしていました。もう 1 社では 200 個のプロジェクト (ほとんどが .NET で一部は C++ プロジェクト) を含むソリューションファイルを使用しており、このプロジェクトは正常に読み込まれるものの、CPU サイクルの消費量が多いためコード編集時に IDE の応答性が低下し、突然クラッシュすることもありました。

 

表面的には、これらの問題は非常に関連が深いように見えます。しかし実際はそうではなく、それぞれのお客様と話し合いソリューションのデバッグを行ったところ、これらの問題の根本的な原因は大きく異なることが判明しました。以下は、この経緯からわかったことと対応を行った点です。

 

  • キャッシュされたプロジェクト情報をある特定のタイプのソリューション (基本的には中程度のサイズの .NET 専用ソリューション) に解放するアルゴリズムを調整しました。
  • キャッシュされたプロジェクト情報の中には、ソリューションに関係なく、単に保持期間が長すぎるものがありました。
  • VS では、常にコード全文スキャンなどの負荷の高い機能が有効になっており、ユーザーが有効化するかしないかを選択できませんでした。
  • VS でソリューション内の複数のプロジェクトを対象としたイベントが実行される場合に、一括処理が適切に行われず、1 つずつ処理されていました。
  • VS では、エクスペリエンスを向上させるためにメタデータ参照をプロジェクト間 (P2P) 参照に昇格させることがありますが、これが一部のユーザーでパフォーマンス低下の原因となっていました (複雑な P2P 参照チェーンがある場合や、ビルド後にバイナリを変更する手順がある場合)。

 

これらの問題が非常に複雑であることがわかってからは、診断や修正を行うために 5 つまたは 6 つの機能チームのエンジニアに参加してもらうことも珍しくありませんでした。こうした対応にマイクロソフトは時間を取られ、さらにはお客様の時間も無駄にしてしまうことになりました。2 社 (皆様もご存知の有名企業) には、それぞれのプロジェクトの調査にあたり快い許可とご協力をいただきましたことを改めて感謝申し上げます。

 

これらの修正点はすべて (さらに他の修正も) Update 3 に反映されています。詳細はリリース ノート (英語)既知の問題 (英語) のページでご確認ください。

その他の関連製品はダウンロード ページから入手できます。リリース ノートや各製品は、Azure でホストされている VM (英語) でも閲覧、ダウンロードが可能です。今回の更新は、前バージョンの Visual Studio 2015 をインストールした環境にインストールできるようになっています。

 

いつものお願いではありますが、皆様からのフィードバックをお待ちしています。問題がありましたら Visual Studio のフィードバック送信オプション (Send a Smile) からご報告ください。機能に関するご提案は UserVoice (英語) へご投稿ください。

 

clip_image002 John Montgomery (Visual Studio 担当プログラム マネージメント ディレクター)@JohnMontJohn Montgomery は Visual Studio、C++、C#、VB、JavaScript、.NET の製品設計とユーザー サポートを担当しています。マイクロソフトに 17 年前に入社し、以来、開発者向けテクノロジの開発に従事しています。