2

我正在使用以下单线程公寓。我无法从线程对象中回收内存/其他资源。Actullay 我想将我的线程包裹在 try catch 和 fianlly 块中。try 和 catch 完成了。但我不确定 finally 块。我需要在 finally 块中调用什么代码、属性或函数。

System.Threading.Thread myThread = null;
    try 
    {
        myThread = new System.Threading.Thread(functionAddressETC)
        myThread .SetApartmentState(System.Threading.ApartmentState.STA);
        myThread .Start();
        myThread .Join();
    }
catch(Exception ex)
{}
finally
{
   // I need help in finally block. I need to reclaim all my resources
   //what function do i need to call here??????
}
4

1 回答 1

1

GC 将回收内存,终结器将释放本机资源。确保这些过程发生的唯一方法是确保不再引用您不再需要的对象。

一个线程除了它的堆栈之外没有任何自己的内存/资源,这将通过关闭线程的连接来清理(除非你有一些东西弄乱了复制本机线程句柄:在这种情况下,当最后一个句柄关闭时)。

于 2009-04-16T16:51:12.410 回答