01 2011 档案
摘要:一个获得方法名的方法,depth表示调用此方法的回溯深度。比如,A方法调用B方法,B方法调用GetCurrentMethodFullName(2),那么得到的结果是A方法的全名(namespace+class名+method名)若要获得当前方法,depth应为0 internal static string GetCurrentMethodFullName(int depth) { try { StackTrace st = new StackTrace(); string methodName = st.GetFrame(depth).GetMethod().Name; string cla
阅读全文
摘要:.NET 类所使用的释放未托管资源的两种方式:1、利用析构函数,此方法有很多问题2、实现IDisposable接口,但需要确保执行Dispose()方法最好的情况是执行这两种机制,获得这两种机制的有点,克服其缺点。假定大多数程序员都能正确调用Dispose()方法,同时把析构函数做为一种安全机制,确保在没有调用Dispose()的情况下也能释放掉资源。Public class Resourceholder:IDisposable{ Private bool isDisposed=false; Public void Dispose() { Dispose(true); GC.SuppressF
阅读全文