摘要: 进程与线程 进程 Process 早期的操作系统是单道批处理的,但是由于CPU执行是高效率的,而IO是低速的,所以就会出现CPU要等待IO的情况。为了进一步提高CPU利用率,就设计出了多道批处理系统,使多道程序能共享CPU和系统资源。后面又因为共享系统资源而导致程序在执行的过程中相互限制,所以就引入 阅读全文
posted @ 2020-09-10 23:08 🐟🐟 阅读(157) 评论(0) 推荐(0) 编辑
摘要: C#6.0 导入静态类 异常过滤器 自动属性初始化 Null条件运算符 字符串内插 nameof表达式 Expression-bodied函数成员 导入静态类 我们可以使用using static 命名空间.静态类来导入要使用的静态类,后续使用时就可以像本地类一样的使用了,例如: //导入Math静 阅读全文
posted @ 2020-07-19 19:34 🐟🐟 阅读(215) 评论(0) 推荐(0) 编辑
摘要: C#5.0 异步编程 调用方信息特性 异步编程 在.NET Framework中,有三种不同的模型来简化异步编程。 .NET1.x中的异步编程模型(APM)方式(类似Beginxx/Endxx方法,使用IAsyncResult和AsyncCallback来传播回调和结果) .NET2.0中的基于事件 阅读全文
posted @ 2020-07-19 18:08 🐟🐟 阅读(255) 评论(0) 推荐(0) 编辑
摘要: C#4.0 动态绑定 命名实参/可选参数 泛型协变和逆变 嵌入的互操作类型 动态绑定 C#4.0引入了一个新的关键字dynamic,用来表示动态类型。dynamic的出现让C#具有了弱语言类型的特性。 关于dynamic的主要规则: 几乎所有CLR类型都可以隐式转换为dynamic 所有dynami 阅读全文
posted @ 2020-07-19 13:33 🐟🐟 阅读(292) 评论(0) 推荐(0) 编辑
摘要: C#3.0 自动实现的属性 匿名类型 Lambda表达式 查询表达式 表达式树 扩展方法 隐式类型本地变量 分部方法 对象和集合初始器 自动实现的属性 如果只是为了封装一个支持字段而创建属性(属性访问器中没有任何逻辑时),C# 3.0 提供了一种更简洁的语法,称为自动实现的属性(Automatica 阅读全文
posted @ 2020-07-18 16:02 🐟🐟 阅读(247) 评论(0) 推荐(0) 编辑
摘要: 异步编程模型 使用 IAsyncResult 设计模式的异步操作是通过名为 BeginOperationName 和 EndOperationName 的两个方法来实现的,这两个方法分别开始和结束异步操作 OperationName 。 例如, FileStream 类提供 BeginRead 和 阅读全文
posted @ 2020-06-27 23:34 🐟🐟 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 基于事件的异步编程 基于事件的异步模式具有多线程应用程序的优点,同时隐藏了多线程设计中固有的许多复杂问题。 使用支持此模式的类,你将能够: “在后台”执行耗时任务(例如下载和数据库操作),但不会中断你的应用程序。 同时执行多个操作,每个操作完成时都会接到通知。 等待资源变得可用,但不会停止(“阻止” 阅读全文
posted @ 2020-06-27 23:33 🐟🐟 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 基于任务的异步编程 基于任务的异步模式 (TAP) 是基于 System.Threading.Tasks 命名空间中的 System.Threading.Tasks.Task<TResult> 和 System.Threading.Tasks.Task 类型,这些类型用于表示任意异步操作。 TAP 阅读全文
posted @ 2020-06-27 23:28 &#128031;&#128031; 阅读(269) 评论(0) 推荐(0) 编辑
摘要: 异步编程 .NET 提供了执行异步操作的三种模式: 基于任务的异步模式(TAP) 基于事件的异步模式(EAP) 异步编程模型(APM) 基于任务的异步模式 Task-based Asynchronous Pattern.简称TAP 该模式使用单一方法表示异步操作的开始和完成。 TAP 是在 .NET 阅读全文
posted @ 2020-06-27 23:25 &#128031;&#128031; 阅读(110) 评论(0) 推荐(0) 编辑
摘要: C#2.0 泛型 分部类型 匿名方法 可空值类型 迭代器 协变和逆变 静态类 泛型 泛型将类型参数的概念引入 .NET Framework,这样就可以设计具有以下特征的类和方法:在客户端代码声明并初始化这些类或方法之前,这些类或方法会延迟指定一个或多个类型。 例如,通过使用泛型类型参数 T,可以编写 阅读全文
posted @ 2020-06-08 20:53 &#128031;&#128031; 阅读(302) 评论(0) 推荐(0) 编辑