c# – 如果使用块返回,是否会丢弃IDisposable?
例如
using(var something = GetSomething()) { something.DoSomething(); if(something.IsX()) return true; } return false; 解决方法
是的,一点没错.调用Dispose方法然后执行using语句,除非它是一个突然的整个进程终止.最常见的情况是:
>块内的返回 基本上,using语句主要是try / finally块的语法糖 – 最后具有所有相同的属性. 编辑:从C# 4 specification的第8.13节:
finally语句在规范的8.10节中描述:
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |