GC.Collect();
GC.WaitForPendingFinalizers();
GC.Collect();

解决方案 »

  1.   

    GC.Collect();好像也只是建议吧。
    不一定真的会清除这个变量。
    GC.WaitForPendingFinalizers();
    http://www.cnblogs.com/dudu/archive/2004/01/25/451.aspx
      

  2.   

    to 楼主
      如果想知道一个对象有多少个引用在指向它,可以使用引用计数。这是在c++中常用的处理对象生存期的方法。
    to btut2004:
    对于实现丢弃模式的对象,GC.WaitForPendingFinalizers();方法也许的确不管用,就像treeview,因为在调用dispose时会SuppressFinalize。所以我记得是没有实现析构函数的对象,只要没有根指向它,GC就会回收,而不会经过三个步骤完成
      

  3.   

    由于.net的内存回收机制,大多数情况下不能立即清空。强制不建议使用