首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

这样的功能用C#应该如何写

2012-01-10 
这样的功能用C#应该怎么写?我想在程序的执行过程中无论以什么方式离开某一个函数的时候,调用一个特定的方

这样的功能用C#应该怎么写?
我想在程序的执行过程中无论以什么方式离开某一个函数的时候,调用一个特定的方法。

比如在C++中CWaitCursor类

void   MyFunc()
{
        CWaitCursor   waitCursor;
        ......
}

由于析构函数会在离开函数前被调用,所以可以在那里做我想做的事情。
但在C#中用什么样的方法才能达到同样的目的?


[解决办法]
void MyFunc()
{
Cursor curCursor = Cursor.Current;
Cursor.Current = Cursors.WaitCursor;

try
{
//Do Something
}
finally
{

Cursor.Current = curCursor;
}
}

[解决办法]
这个finally,我经常拼错,英文比较差,
好在IDE会自动标示出关键字
我只记得有个字母是重复的,呵呵
[解决办法]
我长期以来是把类实例对象置NULL 然后用GC.Collect强制回收资源 然后类的析构函数就可以被执行了 楼主可以考虑下 说实在的你说的离开什么的问题我没搞明白 但是.NET强制回收资源可以解决析构函数按预定时间执行的问题
[解决办法]
你可以override Dispose方法,最后都是通过这个方法来释放的,当然也同样可以用析构函数。
[解决办法]
一般写在Close()里面, 析构函数还是有的, 但因为.net的基本机制, 析构函数的调用会导致很大的效率降低
[解决办法]
使用using关键字来一个确定回收,这样就可以保证资源被回收。不过太麻烦。使用Spring.NET做AOP或许方便一点。
[解决办法]
try finally

热点排行