最新要闻
- 当前时讯:放假一天不调休!2023清明节假期火车票今日开售
- 快资讯丨《霍格沃茨》在线人数锐减 “反恐同”人士冷嘲热讽
- 环球今日讯!《战争机器》电影确定编剧
- 世界聚焦:刚买1个月的特斯拉掉漆车主质疑非新车 售后:交付时没问题
- 热消息:公交司机急刹车致乘客死亡获刑 官方判定当时不需刹车:交通肇事罪
- 全球最资讯丨新车品鉴:2020广州车展探馆:广汽传祺EMPOWER
- 精选!iOS 17将支持第三方应用商店:看齐安卓
- 洗衣机6个月不清洗比马桶还脏?我麻了
- 时代的眼泪 25年历史的数码相机权威网站Dpreview关停
- 每日资讯:中国移动:命苦
- 天天速看:鹿客发布掌心锁V5:掌静脉+3D结构光刷脸解锁 3399元起
- 尼泊尔空难20天就查明原因?为什么东航事故还没有结果?
- 世界微资讯!腾讯四年磨一剑!结果 让大家看笑话了
- OPPO Find X6 Pro:表演一场简单的光影魔术
- 亨迪药业(301211):3月21日北向资金减持66.63万股
- 世界热文:全明星爆款APP“偶像驾到”正式上线 主播经济和明星经纪开启新时代
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
读C#代码整洁之道笔记03_切面关注点、异常处理和线程与并发
1.核心关注点
1.1.开发软件的原因
2.切面关注点
2.1.所有的代码领域都需要处理相关的问题
3.结构化模式
3.1.装饰器模式
- 3.1.1.可以在现有对象上添加新的功能,而不改变其结构
3.2.代理模式
- 3.2.1.所提供的对象可以替代客户端使用的实际服务对象
4.使用PostSharp实现AOP
4.1.收费软件
4.2.缓存
4.3.日志
4.4.异常
4.5.安全
4.6.验证
4.7.事务
4.8.资源池
4.9.配置
4.10.检测
4.11.推荐使用Castle
5.异常处理
5.1.unchecked模式
5.1.1.改善性能
【资料图】
5.1.2.很多情况下unchecked模式并不会发生运行时异常
5.2.NullReferenceException
5.2.1.防御性编程
5.2.1.1.try {...} catch
5.2.2.推荐实现ArgumentNullValidator
5.2.2.1.推荐使用nameof(person)而不是对参数名称进行硬编码
5.3.业务规则异常
5.3.1.Business Rule Exception,BRE
5.3.2.符合预期的,并可用于控制程序的流程
5.3.3.使用正常程序流程进行条件处理
5.3.4.业务规则异常进行条件处理
5.3.5.使用现有逻辑控制程序流程相比依赖抛出异常的方式显得更加合理
5.4.异常应当提供有意义的信息
5.5.自定义异常
5.5.1.提供更详细的信息
5.5.2.使用对最终用户更加友好的术语
5.6.异常类的名称以Exception结尾
5.7.由于异常导致方法无法完成时,应还原状态
6.线程与并发
6.1.使用线程池
6.1.1.令线程池决定线程的数目而非手动设置相应值
6.1.2.任务并行库(Task Parallel Library,TPL)
6.1.3.使用ThreadPool.QueueUserWorkItem()
6.1.4.使用异步委托
6.1.5.使用BackgroundWorker
6.1.6.令线程池决定线程的数目而非手动设置相应值
6.1.6.1.限制线程池使用的处理器数目及线程数目
6.2.使用互斥量同步线程
6.3.使用信号量处理并行线程
6.4.避免死锁
- 6.4.1.当两个或者多个线程执行并等待对方完成时就会发生死锁
6.5.避免竞态条件
- 6.5.1.若多个线程使用同一个资源,并由于各个线程的时序不同而产生不同的输出,这种情况就称为竞态条件
6.6.静态构造器
6.7.静态方法
6.8.可变性是多线程应用程序的问题之源
6.8.1.创建后无法修改的对象称为不可变对象
6.8.2.为了确保线程安全,请不要使用可变对象,按引用传递参数或者修改成员变量
6.8.3.ImmutableArray
6.8.4.readonly struct
6.9.线程安全
6.9.1.传递不可变类型,而非访问静态成员变量
6.9.2.在使用集合,通过引用传递参数以及访问静态类的成员变量时必须非常小心
6.9.3.非线程安全的代码,则需要用锁或者互斥量以及信号量锁定代码
6.9.4.在System.Collections.Immutable命名空间中的集合是不可变集合。
6.9.5.保护资源访问的另一种机制是使用信号量
6.10.同步方法
6.10.1.锁lock
6.10.2.在项目中引入System.Runtime.CompilerServices命名空间,并在需要同步的方法和属性上标注[MethodImpl(MethodImplOptions.Synchronized)]特性
6.10.3.Interlocked类中的方法不会抛出异常
6.10.3.1.无须使用lock语句以改善性能
6.11.不要使用Thread.Abort中止其他线程
关键词:
-
世界热议:Android性能优化-ListView自适应性能问题
ListView是Android中最常用的视图之一,使用的频率仅仅次于几大基础布局。但自从ListView出道至今有许多...
来源: 世界热议:Android性能优化-ListView自适应性能问题
读C#代码整洁之道笔记03_切面关注点、异常处理和线程与并发
当前时讯:放假一天不调休!2023清明节假期火车票今日开售
快资讯丨《霍格沃茨》在线人数锐减 “反恐同”人士冷嘲热讽
环球今日讯!《战争机器》电影确定编剧
世界聚焦:刚买1个月的特斯拉掉漆车主质疑非新车 售后:交付时没问题
热消息:公交司机急刹车致乘客死亡获刑 官方判定当时不需刹车:交通肇事罪
全球最资讯丨新车品鉴:2020广州车展探馆:广汽传祺EMPOWER
每日热闻!【看新股】10家拟上市银行“换道”注册制:利润普遍增长、资产质量分化、资本充足率承压
精选!iOS 17将支持第三方应用商店:看齐安卓
读Java性能权威指南(第2版)笔记24_ Java飞行记录器JFR
洗衣机6个月不清洗比马桶还脏?我麻了
时代的眼泪 25年历史的数码相机权威网站Dpreview关停
当前快报:Go 并发编程(二):锁、Select、Context、定时器
焦点报道:智能生活垃圾检测与分类系统(UI界面+YOLOv5+训练数据集)
当前通讯!Servlet的基本使用
每日资讯:中国移动:命苦
天天速看:鹿客发布掌心锁V5:掌静脉+3D结构光刷脸解锁 3399元起
尼泊尔空难20天就查明原因?为什么东航事故还没有结果?
世界微资讯!腾讯四年磨一剑!结果 让大家看笑话了
OPPO Find X6 Pro:表演一场简单的光影魔术
亨迪药业(301211):3月21日北向资金减持66.63万股
世界最资讯丨uni-app云开发入门
当前资讯!WPF学习-布局
世界热文:全明星爆款APP“偶像驾到”正式上线 主播经济和明星经纪开启新时代
小屏手机真凉了!苹果卖最差的iPhone 14 Plus 出货量也远超13 mini
今日快讯:mysql集群搭建docker-compose方案
上海农商银行完成上海市政府柜台债发售
山姆会员店寿司致多人上吐下泻:官方拒绝三倍赔偿
天天新消息丨致敬葫芦娃?保时捷911 Carrera GTS泰国特别版官图发布
环球最资讯丨14.5英寸超大屏+天玑9000!联想Y900平板正式发布:4999元起
天天观点:13代酷睿+RTX 40!联想拯救者Y7000P 2023电竞本发布:屏幕大升级
13900HX+4090顶配20999元!联想拯救者Y9000P 2023价格公布
环球最新:睡眠报告:山东人上床睡觉时间全国最早、广东人最能熬夜
焦点快看:埃安(埃)
数据库系统
世界看点:day08-2-Thymeleaf
世界快看:使用OpenCVSharp和NAudio库在C#中录制带有声音的视频并保存下来的代码
焦点快报!债市日报:3月21日
天天观速讯丨放假5天!大学生已经在为五一做准备了
外出告别“板砖”电源!联想拯救者推出140W氮化镓适配器
4799元 创维推出新款G60 4K显示器:150Hz高刷 96W反向充电
即时焦点:2023载人航天飞行任务标识正式发布:中国神话神兽鲲元素
全国车企疯狂降价!吉利汽车CEO:吉利不打价格战
每日消息!微服务与rpc/grpc
全球观热点:第132篇:npm第一次使用自己的包(package-lock.json、package.json文件作用说明)
精彩看点:【Visual Leak Detector】在 QT 中使用 VLD(方式一)
热讯:华硕发布新款Vivobook Go 14/15 OLED笔记本:高配酷睿i3-N305
天天观速讯丨真我GT Neo5 1TB存储网友用掉了500多G:直呼“真香”
全球视讯!Win12及DX13要来了?微软预告DirectX全新功能
通信能力是5G的10倍!全球17家运营商发布6G白皮书:预计2030商用
熬夜伤不起!警惕睡眠质量受电子设备影响
记录--前端加载超大图片(100M以上)实现秒开解决方案
关于“堆”题的总体思路
焦点速讯:地表最强AI,GPT-4专治各种不服
个人交340单位交680退休能拿多少?主要看个人缴纳的部分
焦点速讯:匹克态极速浪跑鞋99元抄底:门店299元
天天热文:女子公园租电动车3个多小时扣466元 运营方:上海价格都是这
焦点滚动:别羡慕了!经常不分场合秒睡可能是种病:得看医生
全球观速讯丨宁德时代麒麟电池已量产 同体积比特斯拉电池电量高13%
世界新消息丨省的都是钱 长安汽车推“百亿补贴”:不到11万可买CS75 PLUS
【Visual Leak Detector】安装 VLD
世界速递!三主摄时代来了!OPPO Find X6 Pro大漠银月图赏
全球看点:49dB降噪行业第一!OPPO Enco Free3图赏
1949元 ROG魔方幻“月曜白”路由器今晚开售:三频万兆速率
今热点:微软Bing上线在线绘图功能:文字生成图片 仅支持英文
天天快资讯:安全性远超燃油车!特斯拉发布调查报告:是美国平均水平7.4倍
环球今头条!DVWA-XSS(Reflected)
环球观焦点:关于基于AWS-Cli的方式对EC2及AMI资源批量添加或者删除tag的方法
每日观点:为什么Tomcat架构要这么设计?这篇文章告诉你答案!
全球微动态丨记录监控摄像头的接入过程及web端播放
全球快资讯丨narak靶机
当前快播:新农股份: 2022年度业绩快报
环球观天下!OPPO Find X6 Pro搭载三星E6屏:亮度高达2500nit、支持Pro XDR显示
焦点滚动:用到安卓17没问题!OPPO宣布Find X系列将支持4次大版本更新
449元-6999元!OPPO Find X6发布会四大新品一图看懂
全球速递!报告:2022年中国每四辆新车就有一辆电动车 比亚迪无敌
全球焦点!为什么不建议用redis做消息队列
世界今亮点!【数位DP】计数问题
前端设计模式——状态模式
每日讯息!关于 Vue 列表渲染 key 绑定 index 的性能问题
每日观察!黄金时间·千海金:避险情绪推升金价 但本周的美联储议息会议依然关键
环球观点:杜绝虚标!哈趣投影率先启用中国CVIA亮度标准:成单片式LCD领头羊
OPPO Find N2系列赢麻了!连续三个月折叠屏销量第一
天天速看:自动洗烘拖布 石头自清洁扫拖机器人P10图赏
道奇纯燃油谢幕之作!挑战者SRT恶魔170发布:V8机械增压马力超千匹
简单讲透Mac环境下多版本python的环境变量设置,仅对小白生效
视点!"error LNK2019: 无法解析的外部符号"原因分析
今头条!IDEA Rebuild项目错误:Information:java: java.lang.AssertionError: Value of x -1
对斗破苍穹进行python文本分析
实时焦点:VsCode 常用好用插件/配置+开发Vue 必装的插件
环球简讯:爵士力克国王将湖人挤出附加赛区 迷失盐湖城小萨准三双数据难掩低迷状态
入睡妙招!研究表明穿袜子睡觉更助眠
全球热消息:AMD Zen4霸气!移动版12核心解锁130W 直追170W桌面12核心
"周杰伦演唱会门票"登顶微博热搜 14万张秒售罄
dnf机械牛和悲鸣图在哪里?DNF机械牛和悲鸣的门票分别是什么?
雨过天晴一键还原怎么用?怎么删除雨过天晴一键还原?
OA对话框打不开是怎么回事?OA对话框怎么变成普通对话框?
今日最新!脚本编写的一个通用框架
天天速讯:编写高质量c#代码的20个建议