![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Cshap
文章平均质量分 94
X暗黑X
学习、生活都应该留下只言片语!
展开
-
C#中的多线程 - 高级多线程
转载至:https://blog.gkarch.com/threading/part4.html1非阻塞同步Permalink之前,我们描述了即使是很简单的赋值或更新一个字段也需要同步。尽管锁总能满足这个需求,一个存在竞争的锁意味着肯定有线程会被阻塞,就会导致由上下文切换和调度的延迟带来的开销,在高并发以及对性能要求很高的场景,这不符合需要。.NET Frame转载 2017-06-08 16:28:42 · 3237 阅读 · 0 评论 -
运算符重载
转载:http://www.jb51.net/article/54268.htm本文较为详细的描述了重载运算符的方法。一般来说,重载运算符在实际的项目开发中会经常的用到,但如果某些自定义类型通过简短几行代码重载一些常用的运算符(如:+-*/),就能让编程工作带来方便;重载运算符就是告诉编译器+-*/等运算符对于自定义类型进行什么样的操作,在代码中需要注意几点。一、尽可能的不要改变运转载 2017-06-28 11:22:16 · 154 阅读 · 0 评论 -
c#中foreach与接口IEnumerator和IEnumerable
转载至:http://blog.csdn.net/mashen1989/article/details/7695283c#中foreach与接口IEnumerator和IEnumerable用foreach可以遍历集合中所有元素,实现:c#编译器会把foreach语句转换为IEnumerable接口中的方法和属性,例如[csharp] view转载 2017-06-28 11:17:37 · 319 阅读 · 0 评论 -
浅复制(Shallow Copy)与深复制(Deep Copy)
《.NET4.0面向对象编程漫谈》作者:金旭亮老师转载:http://zhangxuefei.site/p/72复制:对象的复制是生成一个与指定对象完全一样的新对象,实现的方式根据定义可以知道,新建一个类型相同的对象,然后复制原对象的每一个成员和字段。浅复制: class Program { static void Main(string[] a转载 2017-07-14 16:34:01 · 313 阅读 · 0 评论 -
C#几种异步编程
转载:http://zhangxuefei.site/p/69所谓同步:如果在代码中调用了一个方法,则必须等待该方法所有的代码执行完毕之后,才能回到原来的地方执行下一行代码。异步:如果不等待调用的方法执行完,就执行下一行代码。同步例子:namespace AsyncProgram{ class Program { //Calculate转载 2017-07-14 16:15:39 · 1129 阅读 · 0 评论 -
LINQ使用连接(1、组连接 2、内连接 3、左外连接 4、交叉连接)
转载:http://blog.csdn.net/lwllai/article/details/46877311复习一下LINQ的连接操作:[csharp] view plain copystatic public class SampleData { static public Student[转载 2017-07-14 09:59:35 · 578 阅读 · 0 评论 -
.Net之反射
1、什么是元数据,什么是反射?A、程序是用来处理数据的,文本和特性都是数据,而我们程序本身(类的定义和BLC中的类)这些也是数据。B、有关程序及其类型的数据被称为元数据,它们保存在程序的程序集中。C、程序运行时,可以查看其它程序集或其本身的元数据。一个运行的程序查看本身的元数据或其他程序集的元数据的行为叫做反射。 下面我们来学习如何使用Type类来反射数据,以及如何使用特原创 2017-06-09 14:41:02 · 165 阅读 · 0 评论 -
.NET之特性
1、概念 .什么是特性? MADN的定义为:公共语言运行时允许添加类似关键字的描述声明,叫做attributes, 它对程序中的元素进行标注,如类型、字段、方法和属性等。Attributes和Microsoft .NET Framework文件的元数据保存在一起,可以用来向运行时描述你的代码,或者在程序运行的时候影响应用程序的行为。 通俗的理解为:特性本质上是一个原创 2017-06-09 11:04:02 · 1438 阅读 · 0 评论 -
多线程相关概念汇总
转载至:https://blog.gkarch.com/threading/concepts.html#async1基础Permalink1.1线程Permalink线程(thread) 是操作系统能够调度的最小执行单元。不过我更喜欢把它理解为,这是操作系统对于 CPU 计算资源的抽象。如同虚拟内存,程序看到的空间资源是操作系统抽象出来的虚拟空间。而看到的时间资源就转载 2017-06-08 17:13:59 · 243 阅读 · 0 评论 -
C#中的多线程 - 并行编程
转载至:https://blog.gkarch.com/threading/part5.html1并行编程Permalink在这一部分,我们讨论 Framework 4.0 加入的多线程 API,它们可以充分利用多核处理器。并行 LINQ(Parallel LINQ)或称为 PLINQParallel类任务并行(task parallelism)转载 2017-06-08 16:36:53 · 2482 阅读 · 0 评论 -
C# 中的多线程
转载至:https://blog.gkarch.com/topic/threading.htmlC# 中的多线程 这个专题翻译自 Joseph Albahari 的 Threading in C#。 它分为 5 个部分,深入浅出地讲述多线程在 C# 中的使用。它可以帮助你解决一些棘手的问题,例如:线程安全、何时使用 Abort、等待句柄 vs Wait转载 2017-06-08 16:12:46 · 271 阅读 · 0 评论 -
C#中的多线程 - 基础知识
1简介及概念PermalinkC# 支持通过多线程并行执行代码,线程有其独立的执行路径,能够与其它线程同时执行。一个 C# 客户端程序(Console 命令行、WPF 以及 Windows Forms)开始于一个单线程,这个线程(也称为“主线程”)是由 CLR 和操作系统自动创建的,并且也可以再创建其它线程。以下是一个简单的使用多线程的例子:所有示例都假定已经引转载 2017-06-08 16:18:22 · 443 阅读 · 0 评论 -
C#中的多线程 - 同步基础
转载:https://blog.gkarch.com/threading/part2.html1同步概要Permalink在第 1 部分:基础知识中,我们描述了如何在线程上启动任务、配置线程以及双向传递数据。同时也说明了局部变量对于线程来说是私有的,以及引用是如何在线程之间共享,允许其通过公共字段进行通信。下一步是同步(synchronization):为期转载 2017-06-08 16:21:57 · 769 阅读 · 0 评论 -
C#中的多线程 - 多线程的使用
转载至:https://blog.gkarch.com/threading/part3.html1基于事件的异步模式Permalink基于事件的异步模式(event-based asynchronous pattern,EAP)提供了一种简单的方式,让类可以提供多线程的能力,而不需要使用者显式启动和管理线程。它也提供如下的功能:协作取消模型(cooper转载 2017-06-08 16:26:17 · 706 阅读 · 0 评论 -
贝塞尔曲线扫盲
转载至:http://blog.csdn.net/cdnight/article/details/48468653贝塞尔曲线扫盲相信很多同学都知道“贝塞尔曲线”这个词,我们在很多地方都能经常看到。但是,可能并不是每位同学都清楚地知道,到底什么是“贝塞尔曲线”,又是什么特点让它有这么高的知名度。贝塞尔曲线的数学基础是早在 1912 年就广为人知的伯恩斯坦多项式。但直到 1转载 2017-09-06 17:35:48 · 239 阅读 · 0 评论