1、什么时候该异常处理?
1)代码最外层,如WinFrom,避免用户看到内部异常信息用户体验不好,或者造成程序崩溃。
2)遇到异常需要恢复状态或者重试的地方。例如连接数据库偶然失败了,可以有个重连机制,在Catch块重新连接数据库。
3)对于一系列有可能失败的任务,其中有一个任务失败,不想影响到其他任务。例如要上传100张图片,不想因为一张图片上传发生异常而失败,进而终止整个上传任务,仅需要记录下失败的图片,提醒用户重传即可。
2、异常处理需要注意的地方
1)Catch和Finally代码应该非常短,而且成功率极高,避免自己又抛出一个异常。否则CLR会终止进程,避免安全漏洞或者不可预知的后果。这个类似于Windows蓝屏,发生了严重的错误,宁愿使系统不可用。
2)Catch块尽量避免直接捕捉异常的基类Exception,而应该捕捉具体的异常类。
3、异常处理的方法和技巧
1)是否能构建统一的框架处理异常,而不用手工来处理呢?
有的人可能会问,能不能偷懒,在一个地方处理异常就行了。如果仅仅是记录异常系统信息,通知到用户,而且这些信息通常是可以缺少一些上下文的,是可以构建同一的机制记录异常信息的。
例如:
WinFrom的Application对象本身就提供了ThreadException时间来捕捉为处理的异常
复制代码 代码如下:
static void Main()
{
//注册捕捉异常事件
Application.ThreadException += new System.Threading.ThreadExceptionEventHandler(Application_ThreadException);
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
static void Application_ThreadException(object sender, System.Threading.ThreadExceptionEventArgs e)
{
Exception ex = e.Exception;
//做一些极其简单的记录异常信息操作
}
又例如:
WebFrom的Global.asax本身就已经定义了void Application_Error(object sender, EventArgs e) 来处理异常
复制代码 代码如下:
void Application_Error(object sender, EventArgs e)
{
// 在出现未处理的错误时运行的代码
Exception ex = Server.GetLastError();
//处理完异常后清除异常
Server.ClearError();
}
但是很多时候,异常处理,不仅仅只是记录到了错误信息就可以了,有时候是需要失败重试或者清理资源等等,因此,仅仅靠统一构建异常处理框架是不够灵活的,因此可以一方面统一处理,另外一方面特殊的地方可以另外处理。
相关推荐:
GPT-3.5免费吗?揭秘AI智能助手的未来与收费模式,ai 美美
SEO差价如何用SEO优化帮助企业实现成本与效益的完美平衡,盐城seo收费贵吗
seo网站是什么东西,seo网站是什么东西啊 ,ai锯齿消失
什么是seo运营,什么是seo营销 ,ai绘画沙地
在线AI文章生成:内容创作新革命
“扩写AI”-引领写作革命,开启智能创作新时代,dede seo 标题如何填写
SEO确实是企业增长的关键,这些技巧让你走在行业前沿,山东网站建设信息
SEO运营是什么职业,seo运营工程师招聘 ,把ai图层改横幅
揭开“好的AI软件”背后的秘密:让生活和工作更智能的利器
ZBlog:开启你的个人网站新时代,轻松搭建与管理,二手手机营销推广方案
AI生成文章免费工具,让创作变得轻松又高效,ai安心健
SEO手法如何通过精准优化提升网站排名,获取海量流量,网站建设协议流程是什么
SEO项目:如何通过精确优化提升企业网站排名与转化率,武汉做网站优化的公司
ChatGPT:打破语言障碍,理解与沟通的新时代,交通轨道ai
ChatGPT支持多种语言输入输出,让全球资讯触手可及,联想拯救者的ai写作
AI网站开发与代码创新:引领未来数字化变革的关键,ai ay规则
ChatGPT崩一次多久修复?揭秘背后的技术与保障,ai1818818
seo跟sem是什么,seo和sem的概念 ,惠威的ai功能
如何选择适合你的AI工具?全面解析AI工具哪个好用
文章AI思维导图自动生成助力创作的智慧之源
SEO刷:让你的网站一夜之间登顶搜索引擎!,独特seo技巧
seo用什么法宝,列出5种seo赚钱方式 ,ai怎么更改文档样式
ChatGPT服务器坏了?了解背后的技术与应对策略,AI模块代表
ChatGPT打开后空白:如何解决这个困扰并高效使用AI助手,ai四声怎么写
SEO优化做什么的?揭秘SEO优化的核心价值与实战应用,ai做金色
pbootcms自动翻译插件,让你的网站轻松实现多语言覆盖,ai 镀金
AI+写文章:开启智能创作新时代
SEO定价策略:如何根据企业需求定制最佳价格方案,教育培训抖音营销推广
seo监控什么意思,seo数据监控 ,ai panda眼镜架
ChatGPT页面无法下拉?禁用浏览器扩展,轻松解决!,imba 1.6 ai
SEO中的别类词:提升排名,轻松超越竞争对手,ai插画生肖
今时CMS:引领数字化转型的智慧之选,河南seo优化网站联系方式
SEO领先-如何借助SEO技术让您的网站脱颖而出,seo是黑客吗
ChatGPT无法加载?检查您的网络设置并尝试重启ChatGPT,助您畅享无障碍智能对话体验,ai记录人
ChatGPT-深度学习与自然语言处理的革命性突破,金华ai视觉锁螺丝机
SEO运营工作是什么,seo公司运营 ,720516AI
seo需要了解什么,seo需要学些什么内容 ,ovo ai
ChatGPT出现报错503?这些解决办法你必须知道!,粉墨ai说唱
SEO功能:助力网站流量提升与品牌曝光,天津公司网站建设与维护
ChatGPT为什么打不开了?揭秘背后的原因与解决办法,ai业务后端
ChatGPT页面怎么拖不动?解决问题的终极指南,日韩AI换脸在线观看
ChatGPTWindows版本:让AI助手成为你的工作与生活得力助手,Ai相减变形
SEO作用:提升网站流量与品牌曝光的秘密武器,美容网站联盟平台推广
SEO站内优化:提升网站排名的核心策略,厦门市网站优化企业
SEO添加:提升网站流量与排名的必备策略,seo团队成员中国人
seo网络培训是什么,seo工作培训会培训啥 ,ai长投影字
SEO挣钱之道:如何通过SEO实现网络盈利,宁晋网站建设商家
什么是seo快排,seo快排方案 ,ai剪图形
SEO售产-数字营销新战场,助力企业实现盈利增长,去哪找自贡网站建设
SEO专业怎么样?未来发展的无限潜力与职业前景,联通ai智能早教