Visual Studio 2013のブレースマッチング、参照の強調表示、変数の自動検出/、メソッド名の変更(代わりにリファクタリングを使用する必要があります)など...は機能を停止し、VSの再起動後にのみ再び機能します。私はC#でコードを書いています。
この問題で苦しんでいる/影響を受けているのは私だけですか?
非常に厄介なVS2013の問題!!大規模なプロジェクトでのみ発生します。
更新1:VSDesignerでWinFormを開いた直後に発生することに気付きました。コード編集に戻ると、中括弧のマッチングなどがなくなり、VSを再起動する必要があります。
アップデート2:Visual Studio 2013アップデート4それでも...修正なし!!こんにちはマイクロソフト?
更新3:私のソリューションには投票数が少ないため、ここで要約します。私の場合、問題はThread.SleepがVS Designerによって呼び出されたでした。これはコードエラーでしたが、とにかく、DesignerはVS全体をフリーズするThread.Sleepコマンドを実行しないでください。
[〜#〜]最終的に[〜#〜]バグを見つけました!!
まあ、それはあなたがVS IDEをハックしてそれをスリープ状態にする(LOL)ことができるという継ぎ目です、副作用は私が経験した問題です、例えばブレースマッチングがもう機能しません。
それを再現する方法:
Thread.Sleepが動作していることに気付くでしょう!さて、コード編集に戻り、ブレースマッチングを行うと、すべてがなくなります。それを修正する唯一の方法は、VSを再起動することです。
バグを再現するコード:
public UserControl1()
{
InitializeComponent();
Application.Idle += Application_Idle;
}
void Application_Idle(object sender, EventArgs e)
{
Thread.Sleep(200); //Yeah VS IDE will sleep for 200 ms ! LOL!
}
VS Designer 無視する必要があります Thread.Sleepコマンドだと思いますね。
ここで、次の呼び出しを行って作業を行う前に、コードがVSDesigner内で実行されているかどうかを確認します。
// Return if is inside VS Designer !
if (System.Reflection.Assembly.GetEntryAssembly() == null)
return;
また、このコードをForm1内に追加しようとしましたが、VSがスリープを無視していることがわかります。
修正が到着するまで、コードレンズを無効にするを試してください。tools->options->text editor -> all languages ->code lens
または、ALM共有リモーティングタスクを強制終了します。 CPUが非常に高い場合。
これはVisualStudioのバグであり、残念ながらMicrosoftがVisual Studio 2015まで修正しないことを決定したものです Connectのこのチケット :
より深い改善を行う計画がありますが、.NETコンパイラプラットフォームの存在を利用するため、VisualStudioの次のメジャーリリースまでは改善されません。この問題をクローズしている間、VisualStudioの次のリリースで修正する作業が計画されていることに注意してください。
それでも、CodeLensを再び使用できるように、この問題を十分に軽減することができました(個人的には、#3および#4を使用します)。
Microsoft.Alm.Shared.Remoting.RemoteContainer.dll
プロセス(複数ある場合があります)を右クリックし、優先度をに設定します。通常以下または低。 (Visual Studioを開くたびにこれを行う必要があります)Microsoft.Alm.Shared.Remoting.RemoteContainer.dll
プロセス(複数ある場合があります)を右クリックして、設定をクリックします。アフィニティそして1つ以上のコアのチェックを外します。 (Visual Studioを開くたびにこれを行う必要があります)#2のみが問題を完全に解決できることがわかりましたが、#3は、プロセスが利用可能なリソースを飽和させることによって引き起こされるフリーズを停止するのに十分なはずです。処理が完了するまでCPU使用率が高い。マイレージは#4によって異なる場合があります。
私もこの問題に悩まされていたので、この投稿に出くわしました。MicrosoftConnectで報告された このバグ に関連しているようです。
残念ながら、良い回避策はないようで、Microsoftは、Visual Studioの将来のバージョンで(かどうかにかかわらず)対処すると述べました。それは新しいバージョンまたはアップデートを意味します、私は知りません)。
ユーザーのChrisBjugstadが、バグレポートページに次のような提案を投稿しました。
Sysinternals procmonを実行し、この特定のプロセス用にフィルタリングしました。私の場合、プロセス(Microsoft.Alm.Shared.Remoting.RemoteContainer.dll)は、プロジェクトの1つによって参照されているdllを「シャドウコピー」フォルダーに読み書きしています。
%Temp%\ALM\ShadowCopies\<some_guid>
上記のフォルダには2600以上の空のフォルダがありました。フォルダを削除したところ、最初はVSの方が高速でした。
これにより、フォルダのバックアップの構築が開始されるまで、問題が一時的に修正されるだけです(あるとしても)。
幸運を!
この問題にも気づきました。また、Visual Studioプロファイルにログインしていないことに気付き、Visual Studioのオンライン資格情報の問題を解決すると、CPUの占有がなくなりました。