日期:2014-05-17  浏览次数:20486 次

C# 如何释放委托

     private delegate string PhoneDelegate(Dictionary<string, string> dic);

   return PhoneDataHandler(new PhoneDelegate(UsersInfo.Login), phonestr);



        private string PhoneDataHandler(PhoneDelegate pd ,string datastr)
        {
            if (!string.IsNullOrEmpty(datastr))
            {
                datastr = EncryptHelper.AESDecrypt(datastr);
                datastr = pd(JsonHelper.ConvertJsonToDic(datastr));
                datastr = EncryptHelper.AESEncrypt(datastr);
            }

            return datastr;
        }

------解决方案--------------------
clr帮你做了垃圾回收吧
------解决方案--------------------
引用:
return了,也能被回收么?

和return无关,因为return的仅仅是字符串。
------解决方案--------------------
没有对它的引用,GC会找时间释放它的。

委托只是个函数指针而已,占不了多少资源的,不用担心。