我有一個程序,我用它作爲alt-tab替換。我使用.NET編寫它,因此它具有相當大的內存空間。由於我只是偶爾使用它,所以它往往會被分頁。所以當我打電話時,通常需要幾秒鐘才能顯示。這非常煩人。有沒有辦法阻止它被分頁,以便總是立即出現?最大限度地提高程序響應度
我總是可以用更輕量級的語言編寫它,但是有沒有解決方法?
我有一個程序,我用它作爲alt-tab替換。我使用.NET編寫它,因此它具有相當大的內存空間。由於我只是偶爾使用它,所以它往往會被分頁。所以當我打電話時,通常需要幾秒鐘才能顯示。這非常煩人。有沒有辦法阻止它被分頁,以便總是立即出現?最大限度地提高程序響應度
我總是可以用更輕量級的語言編寫它,但是有沒有解決方法?
一個骯髒的竅門是在其中放置一個計時器,每隔一段時間觸發一次無用的(空)計算,以防止(恢復)分頁。
我們沒有直接控制在C#中的虛擬機。用一些高級的東西來掛鉤VM可能是可能的,例如p /調用你用C++編寫的東西(Hans Passant可能會告訴你所有這些)。你也可以爲x64編譯並在64位系統上運行,並提供足夠的內存並禁用虛擬機(我不建議在32位系統上禁用虛擬機,以4GB爲限)。
嗯。我想,如果我創建了一些合適的WinForms對象並將其放置在計時器上,它會將適當的頁面保留在內存中。但我必須測試一下才能找到合適的。哦,也可以做一個GC來保持內存堆。 – Chris 2010-07-12 16:14:53
只是讓定時器處理程序改變主窗體的一些不可見屬性,從而迫使它*在內存中。 – Mau 2010-07-12 16:21:49