Visual Studio 2017でASP.NET Appを作成しているのですが、Node.JS: Server-side Javascriptのプロセスが1.3GBから1.8GBのメモリで動作しているのが気になります。私のIISワーカープロセスは、VS 2015でそれが正常なサイズです。
私のアプリにはNode.JSのライブラリは含まれていません'。 このNode.JS: Server-side Javascriptプロセスをオフにする方法を見つけることができません。このNode.JS: Server-side Javascriptのプロセスをオフにする方法がわかりません。
VS 2017をアンインストールしてVS 2015に戻す以外に、これを殺す方法はないのでしょうか?
タスクマネージャでメインのプロセスを強制終了してもVSには何も影響しませんが、詳細タブに移動して実行中の個々のプロセスを強制終了すると、Visual Studioがクラッシュします。 プロセスを強制終了し、ローカルのWebページを実行した後に起こったことをビデオに撮りました(画質が悪くてすみません。)
この問題に対するフィードバックを提起しました。
MSチームから返信があり、この投稿を案内されました。
node.exeプロセスは、コマンドラインを持っています。 [ここに画像の説明を入力][1]。
と言われたのが事実上。
VS 2017では、いくつかの機能がJavaScriptで実装されています。Node.jsは、そのJavaScriptを実行するためにVisual Studioで使用されます。中でも、ユーザーがTypeScriptやJavaScriptを編集しているときに、書式設定やインテリセンスサービスを提供するコードを実行するために、Nodeが使用されます。これは、VS 2015からの変更点です。
これは私の疑問の答えですが、別の疑問が浮かびました - JavaScriptファイルのインテリセンスを与えるのに、なぜ1.4GBのメモリが必要なのか...それともこれは、32ビットプロセスの2GB(4GB)制限に当たらないように、VSに組み込まれたソリューションの1つで、より少ないメモリを使用するためなのでしょうか?質問質問質問。
最も汚い回避策は、ServiceHub.Host.Node.x86.exe
を他のものにリネームすることです。それ以来、私は悩まされることはありません。実際に必要になったら、また名前を変えればいいだけです。
同じトリックがAdobe Photoshopでも使えますが、私のいつものワークフローではまだ発見していない何らかの理由でNodeが動いています。
名前を変えただけでは、うまくいかない。知らなかった!
どうやらこのリネームトリックは、VSプロセスを中断してNodeをkillし、その後VSを再開した場合にのみ機能するようです。Nodeのexeファイルをリネームした状態でVSを起動すると、プロジェクトを開くときに "unknown hard error"でクラッシュします。また、すでにロードされたプロジェクトで作業しているとき、上記のメソッドやプロパティの遅延参照カウンターは動作しません。
そのため、Nodeプロセスを一時停止し、Windowsのページングによってメモリをramからハードディスクにスワップさせ、exeの名前を変更せずに、後で名前を変更することなくVSを再び起動することは問題ないかもしれません。もし、その結果に耐えることができるのであれば、ですが。