using语法糖详解 2015-01-06 17:45 50人阅读 评论(0) 收藏

前段事件在using外套try catch 突然想到,如果出现异常 会不会执行释放,不执行的话那服务器很可能导致崩溃...

特意上了CSDN问了大神..得到了答案..

Using相等于try catch finally,异常会清理资源。

Using 块有三个部分:获取、使用和释放。

•获取表示创建变量并将其初始化,以便引用系统资源。Using 语句可获取一个或多个资源,您可以在进入块之前恰好获取一个资源,并将其提供给 Using 语句。如果提供 resourceexpression,在将控制权传递给Using 语句之前,您必须获取资源。

•使用表示访问资源并使用资源执行操作。Using 和 End Using 之间的语句代表资源的使用过程。

•释放表示针对 resourcename 中的对象调用 Dispose 方法。这使该对象可以完全终止其非托管资源。End Using 语句释放 Using 块控制的资源。

行为Using 块的工作方式类似于 Try...Finally 构造,在该构造中,Try 块使用资源,而 Finally 块释放资源。因此,不管您如何退出块,Using 块都可确保资源的释放。即使发生未处理的异常(除 StackOverflowException 外),也是如此。

也就是肯定会释放掉..

版权声明:本文为博主原创文章,未经博主允许不得转载。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏技术博文

PHP编程风格规范

本规范由 EasyChen 借鉴 SINA网络应用开发部《C++开发规范》和互动技术部《PHP4开发规范》,以及phpDocument规范 整理出的开发规范。我...

2897
来自专栏CDA数据分析师

Python中eval带来的潜在风险,你知道吗?

00 前言 eval是Python用于执行python表达式的一个内置函数,使用eval,可以很方便的将字符串动态执行。比如下列代码: >>> eval("1+...

3898
来自专栏小樱的经验随笔

新人入坑Redis必会的吐血总结

Redis是一个使用C语言开发的开源的高性能的key-value存储系统,我们可以把它近似理解为Java Map。简单来讲,Redis是一种NOSQL内存数据库...

3572
来自专栏IT可乐

深入理解计算机系统(1.1)------Hello World 是如何运行的

  上一篇序章我谈了谈 程序员为啥要懂底层计算机结构 ,有人赞同也有人反对也好,这都是博主的个人见解,但是博客还是要坚持学下去。这篇博客以案例驱动的模式,通过跟...

2099
来自专栏机器学习实践二三事

Python解析JSON

什么是JSON JSON(JavaScript Object Notation)是一种轻量级的数据交换语言,以文字为基础,且易于让人阅读。JSON是Javasc...

2647
来自专栏塔奇克马敲代码

在使用Qt5.8完成程序动态语言切换时遇到的问题

2274
来自专栏贾老师の博客

【笔记】ejoy2d —— spritepack

792
来自专栏我的技术专栏

《effective Go》读后记录:GO基础

1534
来自专栏积累沉淀

干货--Redis 30分钟快速入门

一、 redis环境搭建 1.简介        redis是一个开源的key-value数据库。它又经常被认为是一个数据结构服务器。因为它的value不仅...

25610
来自专栏同步博客

Smarty的基本使用与总结

含义:Smarty是PHP的一个引擎模板,可以更好的进行逻辑与显示的分离,即我们常说的MVC,这个引擎的作用就是将C分离出来。

683

扫码关注云+社区