成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

CLR 4.0中的新內(nèi)容 狀態(tài)錯(cuò)亂異常

開(kāi)發(fā) 后端
CLR4.0針對(duì)未捕獲異常做了一種可配置的處理機(jī)制。請(qǐng)看下面的文章介紹。

狀態(tài)錯(cuò)亂異常

有人叫它超級(jí)異常. 指的是未捕獲異常, 打亂了程序的狀態(tài), 引起程序崩潰, 或者導(dǎo)致不想看到的程序行為, 如同神經(jīng)錯(cuò)亂. CLR4.0針對(duì)未捕獲異常做了一種可配置的處理機(jī)制. 請(qǐng)看下面的程序. 在CLR2.0里, 這個(gè)catch (Exception ex) 將所有可能發(fā)生的異常都捕獲. 在CLR4.0里, 默認(rèn)情況下這個(gè)超級(jí)catch不會(huì)生效, 一旦出現(xiàn)異常就會(huì)導(dǎo)致程序停止.

class Program
{
    static void Main(string[] args)
    {
        SaveFile("file.txt");
        Console.ReadLine();
    }
    public static void SaveFile(string fileName)
    {
        try
        {
            FileStream fs = new FileStream(fileName, FileMode.Create);
        }
        catch (Exception ex)
        {
            Console.WriteLine("File open error");
            throw new IOException();
        }
    }
}

因?yàn)榇嬖谀承┨厥馇闆r, 需要改變默認(rèn)的策略. CLR 4.0提供了兩種定制的手段

[HandleProcessCorruptedStateExceptions]方法標(biāo)注(Method attribute)

在需要超級(jí)catch的方法前面加上這個(gè)標(biāo)注.就可以讓超級(jí)catch生效, 如下:

[HandleProcessCorruptedStateExceptions]
public static void SaveFile(string fileName)
{
    try
    {
        FileStream fs = new FileStream(fileName, FileMode.Create);
    }
    catch (Exception ex)
    {
        Console.WriteLine("File open error");
        throw new IOException();
    }
}

 

注:這個(gè)方式只能在此方法內(nèi)生效. 在其它地方還是按CLR4.0的默認(rèn)方式處理。config配置文件如果想在整個(gè)應(yīng)用級(jí)改變這個(gè)策略, 就在config配置文件中寫上

<?xml version="1.0"?>
<configuration>

  <runtime>
    <legacyCorruptedStateExceptionsPolicy enabled="true"/>
  </runtime>
</configuration>

 

【編輯推薦】

  1. 在CLR之上的構(gòu)建領(lǐng)域特定語(yǔ)言
  2. 探秘CLR 4.0中的代碼契約
  3. ASP.NET全局異常處理淺析
責(zé)任編輯:彭凡 來(lái)源: www.cnblogs.com/mikelij/
相關(guān)推薦

2009-03-11 10:29:23

代碼契約.NETCLR

2010-01-05 09:26:13

.NET 4.0

2009-07-24 17:22:22

CLR 4.0安全模型

2009-10-20 15:03:29

ExpandoObje

2013-08-27 15:03:18

PowerShell

2009-08-10 18:16:33

ICustomQuer.NET 4.0

2009-10-19 14:25:16

靜態(tài)構(gòu)造函數(shù)

2018-11-15 14:05:24

MongoDB數(shù)據(jù)庫(kù)事務(wù)

2009-09-03 14:26:17

Jit編譯

2009-09-04 16:28:05

ASP.NET 4.0

2009-08-19 16:51:14

C# 4.0 dyna

2011-01-14 10:27:18

C#.netasp.net

2023-03-30 14:45:51

工業(yè)4.0物聯(lián)網(wǎng)

2009-12-30 10:21:36

.NET 4.0

2009-05-26 09:28:22

C# 4.0dynamic動(dòng)態(tài)類型

2010-08-05 13:08:44

Eclipse SDKEclipse E4

2023-11-29 15:53:45

2018-08-20 16:25:48

編程語(yǔ)言Java異常處理

2009-05-26 11:15:31

C# 4.0dynamicVisual Stud

2021-12-13 16:16:42

Java開(kāi)發(fā)工具
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 欧美成人免费在线 | 性色av一区二区三区 | 日韩视频1 | 伊人色综合久久久天天蜜桃 | 亚洲精品视频导航 | 国产精品美女一区二区 | 久久久精品一区 | 人人九九精 | 欧美9999 | 成人a视频在线观看 | 久久精品一级 | 久久91精品 | 日韩美av| 亚洲欧洲精品在线 | 色综合久久天天综合网 | 中文字幕啪啪 | 国产精品久久久久久久久久 | 成人片网址 | 久久国产精品免费一区二区三区 | 欧洲亚洲精品久久久久 | 羞羞视频在线观免费观看 | 欧美日韩亚洲视频 | 欧美中文在线 | 亚洲精品久久久一区二区三区 | 欧美日韩高清在线一区 | 成人在线免费视频 | 久久久精品| 久久欧美精品 | 欧美日韩a | 亚洲在线一区 | 黄色片免费在线观看 | 天天射视频| 亚洲精品久久久久久久不卡四虎 | www.啪啪.com| 成人免费一区二区三区视频网站 | 中文字幕精品一区 | 一区二区三区四区电影 | 免费视频99 | 91精品在线播放 | 日韩一级不卡 | 九九综合|