摘要: 此方法通过使用延迟执行实现。 即时返回值为一个对象,该对象存储执行操作所需的所有信息。 只有通过直接调用对象的 GetEnumerator 方法或使用 Visual C# 中的 foreach(或 Visual Basic 中的 For Each)来枚举该对象时,才执行此方法表示的查询。 在查询表达 阅读全文
posted @ 2019-04-06 16:14 1936xinyang 阅读(248) 评论(0) 推荐(0) 编辑
摘要: LINQ查询方法一共提供了两种扩展方法,在System.Linq命名空间下,有两个静态类:Enumerable类,它针对继承了IEnumerable<T>接口的集合进行扩展;Queryable类,针对继承了IQueryable<T>接口的集合进行扩展。我们会发现接口IQueryable<T>实际也是 阅读全文
posted @ 2019-04-06 15:32 1936xinyang 阅读(1074) 评论(0) 推荐(0) 编辑
摘要: IList(IList<T>)会立即在内存里创建持久数据,这就没有实现“延期执行(deferred execution)”,如果被加载的实体有关联实体(associations),此关联实体不会被加载(既不立即加载,也不延迟加载)。IQeurable(IQuerable<T>)不会立即在内存里创建持 阅读全文
posted @ 2019-04-06 15:01 1936xinyang 阅读(256) 评论(0) 推荐(0) 编辑
摘要: 随同.NET4.0发布的并行扩展库的两个基本组件:TPL(Task Parallel Library)和PLINQ(Parallel LINQ)其次是TAP(Task-based Asynchronous Pattern)以及配套的C#5.0语言的支持,强烈建议使用这些高级抽象。 阅读全文
posted @ 2019-03-23 16:25 1936xinyang 阅读(88) 评论(0) 推荐(0) 编辑
摘要: 并行扩展库相当有用,因为它允许使用更高级的抽象——任务,而不必直接和线程打交道。但有的时候,要处理的代码是在TPL和PLINQ问世(.NET4.0)之前写的。也有可能某个编程问题不能直接使用它们解决,因此仍然要直接操纵线程的API。 (1) (2) (3) (4) (5) 阅读全文
posted @ 2019-03-23 16:08 1936xinyang 阅读(92) 评论(0) 推荐(0) 编辑
摘要: 我认为在使用多线编程之前,了解下面的基本术语,对我们是有些帮助的。 进程是给定程序当前正在执行的实例;操作系统的一个基本功能就是管理进程。每个进程都包含一个或多个线程。进程由System.Diagnostics命名空间的Process类的实例表示。 单线程程序是仅包含一个线程的进程。多线程程序的进程 阅读全文
posted @ 2019-03-23 14:55 1936xinyang 阅读(167) 评论(0) 推荐(0) 编辑
摘要: Task是可能有延迟的工作单元,目的是生成一个结果值,或产生想要的效果。任务和线程的区别是:任务代表需要执行的作业,而线程代表做这个作业的工作者。 在.Net 4中,Task.Factory.StartNew是启动一个新Task的首选方法。一般它使用的主要场景只是将一个工作任务丢给一个后台线程执行而 阅读全文
posted @ 2019-03-16 15:35 1936xinyang 阅读(2266) 评论(0) 推荐(0) 编辑
摘要: C#提供了两种类型的转换方式:当数据从"小类型"转换成"大类型"时,被称为隐式类型转换,当数据从"大类型"转换为"小类型"时,被称为显示转换。显示类型转换被称为强制类型转换,需要在前面加"()"转换操作符,并在括号类添加要转换的类型。 阅读全文
posted @ 2019-03-09 14:33 1936xinyang 阅读(915) 评论(2) 推荐(0) 编辑
摘要: i 允许编辑 q 退出编辑 :w 保存文件但不退出vi:w file 将修改另外保存到file中,不退出vi:w! 强制保存,不推出vi:wq 保存文件并退出vi:wq! 强制保存文件,并退出viq: 不保存文件,退出vi:q! 不保存文件,强制退出vi:e! 放弃所有修改,从上次保存文件开始再编辑 阅读全文
posted @ 2019-03-04 17:20 1936xinyang 阅读(159) 评论(0) 推荐(0) 编辑
摘要: C#常用的单元测试框架有XUnit 、NUnit 、MSTest 做过单元测试的同学大概都知道以上几种测试框架,这几种框架除了标注测试类和方法的特性用的不一样之外,XUnit 和 NUnit 是非常相似的,而它们比MSTest最大的不同处就是多了传值测试 阅读全文
posted @ 2019-03-03 16:55 1936xinyang 阅读(1638) 评论(0) 推荐(1) 编辑