0

どうしたのみんな。

しばらくの間、何かが私を悩ませています...そして、これに対する回避策を知っている人がいるかどうか疑問に思っていました.

私が取り組んでいる C# ソリューションは、約 20 のプロジェクトとほぼ同量の単体テスト プロジェクトを含む巨大なソリューションです。各プロジェクトには数百のファイルが含まれています。そのため、ソリューションを開いたり閉じたりするにはしばらく時間がかかります...しかし、一度開いてしまえば、すべて問題ありません。

しかし、コンピューターを一晩中 (ソリューションを VS で開いたまま) そのままにし、翌朝戻ってくると、VS で行うすべての操作が次の 30 分間ほど非常に遅くなります。

これが起こる理由はわかっています... Windowsがメモリ(RAM)からアイドルプロセスを削除しているように見えるためです。そして、VSで何かを行うと、ページファイルからデータを取得してメモリに戻すため、プロセスのメモリがRAMに完全に復元されるまで、単一の操作がすべて遅くなります。

私の質問は、VSが優先度の高いプロセス/アプリケーションであることをWindowsに伝え、そのプロセスのメモリをRAMに残す方法はありますか?

前もって感謝します、

-オリ

4

3 に答える 3

2

これは不可能だと思います。OTOH、コンピューターをディスクへのサスペンドモードにすることができます。それは、あなたが去るとき(つまり、VS in RAM)と同じようにその状態をほとんどフリーズし、作業を開始したときに同じ状態に復元します. 追加のボーナスとして、エネルギーを節約するのに役立ち、地球を救う可能性があります.

于 2009-08-28T13:32:08.190 に答える
0

私の知る限り、ボトルネックはCPU時間ではなくI / Oであるように見えるため、プロセスの優先度を変更しても問題は解決しません。問題によって生産性が低下する場合は、数 G の RAM を購入するだけの価値があります (OS と予算によって異なります)。約 3 ~ 4GB の RAM を取得できる場合は、スワップ ファイルを削除する (またはほぼ削除する) こともできます。これにより、アイドル時にVSが沈むのを防ぎます。

もう 1 つのオプションは、VS のヒープをウォークし、メイン メモリに強制的に格納するツールを作成することです。これは、アドインを作成するか、コード インジェクションによって行うことができます。仕事に取り掛かる前にそれを実行しておけば、VS が起動し、すぐに実行できるようになります。ただし、いくつかの作業が必要であり、実際に必要以上のメモリが必要になる場合があります (VS のメモリの一部は、他のすべてのプロセスと同様に、通常どおりに作業している場合でもスワップ ファイルにあります)。

于 2009-08-28T14:50:32.153 に答える
0

この記事に従ってVSショートカットを変更して優先度を上げることができますが、プロセスのメモリについて説明したことを行うかどうかはわかりません。

また、パフォーマンスのためだけに、SSD ドライブを入手してハード ドライブを交換することを検討することもできます (まだ行っていない場合)。私の友人が、SSD を搭載した新しいラップトップを見せてくれました。1 分もかからずに Windows が起動し、5 秒もかからずに VS が開きました。

スタート メニューから VS を直接開いていたとしても、その巨大なプロジェクトを開くと、少なくとも大幅に高速になることが期待されます。

于 2009-08-28T13:34:05.317 に答える