c#中如何有效回收内存资源
c#编写了一个软件,但现发现程序运行占用内存,越来越大,使用了Dispose()来释放窗体,控件资源,并使用System.GC.Collect()强制CLR回收资源   ,但好像收效不大。请问有什么好地解决办法?
------解决方案--------------------释放一个 s 字符串的内存   
 [DllImport( "KERNEL32.DLL ", EntryPoint =  "RtlZeroMemory ")] 
 public static extern bool ZeroMemory(IntPtr Destination, int Length);   
 string s ; 
 s =  "123123123 "; 
 GCHandle gch = GCHandle.Alloc( s ,GCHandleType.Pinned ); 
 ZeroMemory(gch.AddrOfPinnedObject(), s.Length * 2); 
 gch.Free();
------解决方案--------------------如果楼主确认自己把窗体 空间 还是数据(dataset,datatable等等) 都释放了  
 那就让.net自己管理内存吧 
 我也有发现 用C#写个再小的程序也是要占用一定百分比的内存, 
 超过后.net自己会释放掉一部分的