Visual Studio 2015を起動すると、他の2つの実行可能ファイルも起動します。
VsHub.exe
そして
Microsoft.VsHub.Server.HttpHost.exe
これらは両方ともタスクマネージャでかなりのスペースを必要とします。
この「Visual Studio Hub」オプションを削除するにはどうすればよいですか?Visual Studio Hubの機能を含め、Visual Studioの「一流」の機能は使用していません。
Visual Studio 2015を起動すると、他の2つの実行可能ファイルも起動します。
VsHub.exe
そして
Microsoft.VsHub.Server.HttpHost.exe
これらは両方ともタスクマネージャでかなりのスペースを必要とします。
この「Visual Studio Hub」オプションを削除するにはどうすればよいですか?Visual Studio Hubの機能を含め、Visual Studioの「一流」の機能は使用していません。
回答:
私はVS Hubとそれが意図するものに光を当てようとするつもりだと思った。私はマイクロソフトで働いています。
sraboyが述べているように、VS Hubは、マルチツール通信をサポートするためにVisual Studio(およびBlendなどの他のVSシェルベースの製品)が使用するアウトオブプロセスサービスホストであり、devenv(VS)内の応答性が向上します。特定のサービスがスポーンプロセスのライフタイムを超えて延長できるようにします。VS Hubで現在ホストされているサービスのセットには、ローミング設定、診断ツールでレンダリングされるETLデータの大規模なスワスの処理、一部のテレメトリレポート、および拡張自動更新など、他の回答で呼び出される多くの項目が含まれますと通知。ただし、そのサービスのセットは将来的に大きくなる可能性が非常に高いので、現時点でそれらのサービスのいずれも必要ではないと思われる場合でも、将来的に追加のサービスがホストされます(つまり、vshubを無効にするのはかなり大きなハンマーです)。
存続期間に関しては、vshubおよびホストプロセス(つまり、Microsoft.VsHub.Server.HttpHost(64).exe)は、devenv.exeが閉じた後も実行を続けることができます。ただし、無期限に実行し続けることはできません。ほとんどの場合、これらのプロセスは、VSベースのシェルを閉じる最後のインスタンスから約5分以内に終了します。したがって、VSを実行しているインスタンス(devenv.exe)とBlendを実行しているインスタンス(blend.exe)があり、devenv.exeをシャットダウンした場合、vshubと関連するホストプロセスは実行を続けます。その後、blend.exeをシャットダウンすると、vshubおよび関連するホストプロセスは引き続き実行されます。ただし、それから約5分後に、これらの追加プロセスはシャットダウンします。その5分のウィンドウ内でdevenv.exeの別のインスタンスを開始すると、vshubと関連するホストプロセスは終了しません。
リソースに関しては、vshub.exeプロセス自体は常に比較的しなやかなものでなければなりません。それが大きくなる場合、それはバグであり、修正できるように私はそれについて知りたいです:-)一方、ホストプロセスは、ホストされているサービスによっては非常に大きくなる可能性があります。特に、診断ツールはETLを処理することで機能します。ETLは非常に大きくなる可能性があるため、ホストは多くのリソースを使用する可能性があります。診断チームはそれを減らす方法を模索していますが、現時点では、不要なときに診断ツールウィンドウを閉じることで問題を軽減できます。
オンライン接続に関しては、現時点でホストされているサービスのセットには現在3つの主要なソースがあります(注:これは時間とともに変化します)。まず、user3345048が言及しているように、拡張機能を検出して自動更新するサービスがそのプロセスで実行されます。その通信を制御するオプションは、ツール|ツールにあります。オプション| 環境| 拡張機能と更新(最初の2つのチェックボックスを参照)。次に、ローミング設定はVS Hubのサービスとして実行されます。この動作を制御する設定は、ツール| オプション| 環境| 同期された設定(全体として、VSの右上隅にあるパーソナル化アカウントにサインインしない場合)。最後に、VS Hubはテレメトリを報告します。このデータの量は、ヘルプ| カスタマーフィードバックオプション| 設定…メニュー項目。また、マイクロソフトが収集するテレメトリの種類と、その場所でのテレメトリの使用方法について読むこともできます。
上記の誰も言及していない何か...
ファイアウォールのログによると、VsHub.exe、Microsoft.VsHub.Server.HttpHost.exe、およびMicrosoft.VsHub.Server.HttpHostx64.exeはすべてオンラインで通信しようとします。
発信接続の試みがあったアドレスは、191.236.194.164(Microsoft Azure、Wichita Kansas)および23.102.160.172(Microsoft Azure、Redmond Washington)でした。
「モダン」なソフトウェアはクラウドに統合されることになっていると思いますが...
Microsoft Azureサーバーから何も必要とせず、プライバシーに正当に関心があり、私が取り組んでいることの一部を外部に漏らさない人として、私は本当にA)を選択しない方法を望んでいますこれらのプログラムを実行するため、またはB)オンラインでのチャットを制限するための設定が提供される。はい、ファイアウォールは接続をブロックしますが、それは最後の手段です。
「[] Microsoft Azureサーバーに連絡する」という単純なチェックボックスだけでいいでしょう。それが問題のプログラムを実行しないことを意味するのか、それとも単にオンライン接続を行わせないのかは、私にとって重要ではありません。リソースの観点からは、前者の方がリソースの使用量が少ないため、より良いと思います。
原則として、インストールされたアプリケーションのファイルスイートのファイルを変更することは提案しませんが、仮想マシン環境でVisual Studio 2015への変更をあまり影響なしにテストできるため(スナップショットはすばらしい)、変更を試みましたこれら3つのファイルに対するアクセス許可(継承を削除してから、ユーザーの読み取りと実行を禁止する)。
Voila、これ以上VsHubアプリケーションは実行されず、リモートシステムに接続しようとしています。
Visual Studioが起動します。ここにはマイナス面はありません。
-ノエル
Visual Studio Express 2015でWindows 7 x64を使用しています。タスクマネージャーで迷惑なプロセスを終了しました。次に、C:\ Program Files(x86)\ Common Files \ microsoft shared \ VsHubフォルダーを削除しました。この操作で問題は解決しますが、管理者権限が必要です。
xakepp35が言及したように、C:\ Program Files(x86)\ Common Files \ microsoft shared \ VsHubフォルダーを削除できます。しかし、アップデートや他のインストーラーがそれを再作成しようとする可能性が高いと思います。
私がしたことは、すべてのVSプロセスをシャットダウンすることでした。(管理者として)フォルダーの所有権を取得し、次にフォルダーをRAR(ZIP)して、最後にそれを削除します(ファイルを戻す必要がある場合は、バックアップとしてRAR)。鉱山はSSDなので、スペースを節約したい。それ以外の場合は、名前を変更してそのままにしておくことができます。
その後、再度作成されないようにするために、古いWin 3.1のトリックを使用しました。名前のテキストファイルを作成VsHub.txtに\プログラムファイル(x86の)\ CommonのFiles \ Microsoft共有:Cフォルダを。次に、テキストファイルの名前を変更し、.txt拡張子を削除して、VsHubという名前のファイルを残します。OSは、同じ場所に同じ名前のフォルダーとファイルを作成できないため、VSへのフォルダーとしてはアクセスできず、フォルダーとしてのアクセスできない将来のインストーラー/アップデーターにもアクセスできます。その後、今後再びアクセスを許可する必要がある場合は、ファイルに.txtを追加してください。
これは、@ sraboyの回答によると、ビジュアルスタジオ用のコミュニケーションスイスアーミーナイフのようです。デバッグ中に使用して、実行中のプロセスに関するパフォーマンス情報を表示するだけでなく、作業中のプロジェクトに関するテレメトリをMicrosoftに送信します。(一目で)無効にした状態でコードをビルドしてステップ実行できます。
AVによるvshubプロセスの作成を削除、名前変更、またはブロックすると、前述のパフォーマンストレースが無効になります。vshubを失うと、vortex.data.microsoft.com と通信してVisual Studioを使用し、ソリューションIDやプロジェクトGUIDなどの情報をアカウントIDとともに渡すことで、プライバシーが向上します。以下は、HTTPSデータをインターセプトするフィドラーのスクリーンショットです。
ネットワークレベルでアクセスをブロックするとプライバシーは向上しますが、リソースの使用状況の問題には対処できません。後者は、Visual Studioを実行する際の通常のオーバーヘッドと見なします。
ユースケースについては、おそらく何らかの形で無効にすることで回避できます(ウイルス対策ソフトウェアによるインスタンス化のブロックはおそらく最もクリーンなアプローチです)が、まだ理解していない追加機能をサポートしている可能性があります。
マイクロソフトプログラムマネージャーによるVisual Studioブログへのコメントコメントによると、Visual Studioブログへのコメントは、VSスイート全体のマルチツール通信をサポートするために使用されています。Visual Studioがどれほど複雑かを考えると、xakepp35の回答(それを削除する)ほど厳しいものはお勧めしません。
VS2015が実行されている私のWin10 x64では、デバッグ中に3つのプロセスがあり、合計RAM使用量は合計150MB未満です。心配する必要のない最小限のRAMを搭載したマシンでページスラッシングを行わない限り。VS2015を実行している場合、150 MBの空き容量があると思います。
ハブがサポートしているものを明示的に示すドキュメントが見つかるまでは、そのままにすることをお勧めします。私の経験では、Visual Studioのインストールは簡単に中断できません。
Visual Studioがオンラインで接続しようとする理由の1つは、デフォルトで、Visual Studioとその拡張機能の両方の更新をオンラインで検索することでもあるようです。
また、Visual StudioのコアにはInternet Explorerのバージョンが含まれているため、Webページ(および拡張機能)をライブでダウンロードできます。言い換えれば、それはブラウザとしても機能し、誰もが知っているように...マイクロソフトは、ユーザーのデータとソフトウェアの使用状況をチェックすることにかなり熱心です。
メニューの[ ツール ] →[ オプション ]には、多くのオンライン機能があります。(正直に言って、私は欠陥があるとしてもMonoDevelopを好む。)
BrowserLink、Diagnosticsウィンドウ、Intellitraceに必要です。
これらの機能が必要になることもありますが、RAMは8 GBしかありません。私は通常90〜95%の使用率なので、フォルダーの名前を変更してダミーファイルのある空のフォルダーへのシンボリックリンクを作成することにより、VSHubのオンとオフを切り替えるバッチファイルを作成しました。
実行する前にVisual Studioをシャットダウンします。
@echo off
goto CheckVsHubRunning
:KillVsHub
echo Killing VsHub Process
taskkill /IM VsHub.exe /T /F
TIMEOUT /T 3 /NOBREAK
:CheckVsHubRunning
ver > nul
tasklist /FI "IMAGENAME eq VsHub.exe" | find /I /N "VsHub.exe"
if "%ERRORLEVEL%"=="0" goto KillVsHub
if "%ERRORLEVEL%"=="1" echo VsHub is not running.
echo.
PUSHD "C:\Program Files (x86)\Common Files\microsoft shared"
IF NOT EXIST "VsHub.original" (
echo Renaming Original VsHub folder.
RENAME "VsHub" "VsHub.original"
)
IF NOT EXIST "VsHub.dummy" (
echo Creating Dummy Folder and Contents
mkdir "VsHub.dummy"
copy NUL > "VsHub.dummy\1.0.0.0"
copy NUL > "VsHub.dummy\ServiceModules"
mkdir "VsHub.dummy\dummy"
)
IF EXIST "VsHub\dummy" (
echo ENABLING VsHub
echo.
rmdir VsHub
mklink /d VsHub VsHub.original
) ELSE (
echo DISABLING VsHub
echo.
rmdir VsHub
mklink /d VsHub VsHub.dummy
)
echo.
pause
私のマシンではVSHubとそのクロニーは通常以下を使用します:
これにより、1 GB以上のRAMが解放され、機能がほとんど失われません。