
.net研究院
qq_33931256
这个作者很懒,什么都没留下…
展开
-
.net研究院之多线程技术1-Async
知识补充进程:计算机概念,程序在服务器运行时占据全部计算资源综总和 虚拟的,线程:计算机概念,进程在响应操作时最小单位,也包含CPU 内存 网络 硬盘IO 虚拟的概念,更加看不见摸不着一个进程会包含多个线程;线程隶属于某个进程,进程销毁线程也就没了句柄:其实是个long数字,是操作系统标识应用程序多线程:计算机概念,一个进程有多个线程同时运行C#里面的多...原创 2019-09-26 18:12:16 · 374 阅读 · 0 评论 -
.net研究院之多线程技术2-Threed
.net Framework1.0后出现的 Threed展示一下三个已经不怎么用基本抛弃了的方法thread.Suspend();//暂停thread.Resume();//恢复 真的不该要的,暂停不一定马上暂停;让线程操作太复杂了thread.Abort();//线程是计算机资源,程序想停下线程,只能向操作系统通知(线程抛异常),//会有延时/不一定能真的停下来让线...原创 2019-09-27 10:44:32 · 148 阅读 · 0 评论 -
.net研究院之多线程技术3-ThreadPool线程池
Thread--功能繁多,反而用不好--就像给4岁小孩一把热武器,反而会造成更大的伤害对线程数量是没有管控的线程池.NetFramework2.0如果某个对象创建和销毁代价比较高,同时这个对象还可以反复使用的,就需要一个池子保存多个这样的对象,需要用的时候从池子里面获取;用完之后不用销毁,放回池子;(享元模式)节约资源提升性能;此外,还能管控总数量,防止滥用;ThreadPool的线...原创 2019-09-27 11:37:30 · 287 阅读 · 0 评论 -
.net研究院之多线程技术4-Task
Task被成为.net多线程最佳实现几乎90%以上的多线程场景,以及顺序控制,Task的方法就可以完成如果你的多线程场景太复杂搞不定,那么请梳理一下你的流程,简化一下建议最好不要线程嵌套线程,两层勉强能懂,三层hold不住的,更多只能求神1 Task:Waitall WaitAny Delay2 TaskFactory:ContinueWhenAny ContinueWhenAl...原创 2019-09-27 15:45:39 · 254 阅读 · 0 评论 -
.net研究院之多线程技术5-Parallel
Parallel是在Task之后出现的APITask专题Parallel在调用的时候,会阻塞当前线程{ //跟for循环一样,会启动5个线程,并传入0-5循环的值,在第二个参数i中拿取 Parallel.For(0, 5, i => this.DoSomethingLong($"btnParallel_Click_{i}"));}{ //也可以使用F...原创 2019-09-27 16:15:35 · 182 阅读 · 0 评论 -
.net研究院之多线程技术6-异常处理-线程间通知-临时变量-线程安全&Lock
多线程的异常处理示例线程异常后经常是需要通知别的线程,而不是等到WaitAll,问题就是要线程取消工作中常规建议:多线程的委托里面不允许异常,包一层try-catch,然后记录下来异常信息,完成需要的操作如果某一个线程异常了,需要通知或终止其他线程示例//多线程并发任务,某个失败后,希望通知别的线程,都停下来,how?//Thread.Abort--终止线程;向当前线程抛一...原创 2019-09-27 18:11:05 · 291 阅读 · 0 评论 -
.net研究院之爬虫(第三方工具包HtmlAgilityPack)
为什么要这个? 做个内容站--小说/电影/动漫---阿里云+爬虫+Web 数据搜集爬虫---招标数据爬虫/淘宝数据/招聘信息 竞品分析--抓取竞争对手数据爬虫违法吗? 不问自取谓之偷;爬虫能拿到的信息都是浏览器能访问到的,就是公开数据; 不要基于盈利(小爬虫都没事儿);360搜索引擎--被判赔偿--违背了robots爬虫就是分析--->...原创 2019-10-10 15:04:19 · 332 阅读 · 0 评论 -
.net研究院之 await/async
await/async关键字任何一个方法 都可以增加asyncawait 放在task前面 一般成对出现 只有async是没有意义的,有警告 只有await是报错的,编译直接报错await/async 要么不用 要么用到底直接调用Task的result方法和Wait方法都是阻塞的,而await是非阻塞的,是一个语法糖,编译器完成的awai...原创 2019-10-10 18:08:11 · 742 阅读 · 0 评论 -
.net 之设计模式的核心套路—AOP面向切面编程
POP面向过程编程符合逻辑思维,线性的处理问题-----无法应付复杂的系统OOP面向对象编程万物皆对象,对象交互完成功能,功能叠加成模块,模块组成系统,去搭建复杂的大型软件系统 砖块儿----墙---房间----大厦 砖块儿应该是稳定的,静态的 类----功能点---模块----系统 类却是会变化的,增加日志/异常/权限/缓存/...原创 2019-09-26 15:50:28 · 563 阅读 · 0 评论 -
.net之设计模式的核心套路—责任链模式
行为型设计模式责任链模式转移行为请求的处理流程,沿着链子顺序执行,还允许链子扩展和订制以请假为例子请假申请类 /// <summary> /// 请假申请, /// Context--上下文环境,保存业务处理中参数-中间结果-最终结果 /// 行为型设计模式常用的标配 /// 把行为转移, /// </...原创 2019-09-25 11:37:17 · 214 阅读 · 0 评论 -
.net研究院之反射(Reflection)
反射(Reflection)使用简单工厂模式创建实例,动态加载dll库简单工厂类 /// <summary> /// 简单工厂 /// </summary> public class SimpleFactory { //读取配置文件 //程序集名(Ruanmou.Libraries.DAL)...原创 2019-10-11 10:04:55 · 150 阅读 · 0 评论 -
.net之设计模式的核心套路—简单工厂
创建型设计模式简单工厂不直接new,把对象创建转移到工厂类(简单工厂不属于23种设计模式) /// <summary> /// 简单工厂 /// 泛型:不对的 因为要去掉细节 /// </summary> public class ObjectFactory { /// <summary&...原创 2019-09-25 16:37:51 · 165 阅读 · 1 评论