GC.Collect(); //下面這行是重點 GC.WaitForPendingFinalizers();
或採用 Windows API [C#][VB.NET]壓縮.NET程式的記憶體用量
這招好像不錯喔,有空來試試看!
底下有更好的範例:引用來源:your VB .NET App taking up too much memory??
Public Class MemoryManagement Private Declare Function SetProcessWorkingSetSize Lib "kernel32.dll" ( _ ByVal process As IntPtr, _ ByVal minimumWorkingSetSize As Integer, _ ByVal maximumWorkingSetSize As Integer) As Integer Public Shared Sub FlushMemory() GC.Collect() GC.WaitForPendingFinalizers() If (Environment.OSVersion.Platform = PlatformID.Win32NT) Then SetProcessWorkingSetSize(Process.GetCurrentProcess().Handle, -1, -1) End If End Sub End Class
沒有留言:
張貼留言