随笔分类 - .NET系统学习
摘要:本系列学习在.NET中的并发并行编程模式,实战技巧 本小节了解TPL Dataflow并行工作流,在工作中如何利用现成的类库处理数据。旨在通过TDF实现数据流的并行处理。 TDF Block 数据流由一个一个的块组成,一个块处理完毕后链接到下一个块上。每一个块以消息的形式接收和缓存来自一个或多个源的
阅读全文
摘要:本系列学习在.NET中的并发并行编程模式,实战技巧 内容目录 1、异步重试2、错误处理3、再说一句 本小节开始学习基于任务的函数式并行。本系列保证最少代码呈现量,虽然talk is cheap, show me the code被奉为圭臬,我的学习习惯是,只学习知识点,代码不在当下立马要用的时候不会
阅读全文
摘要:本系列学习在.NET中的并发并行编程模式,实战技巧 请问普通: 被门夹过的核桃还能补脑吗 本小节开始学习基于任务的函数式并行。本系列保证最少代码呈现量,虽然talk is cheap, show me the code被奉为圭臬,我的学习习惯是,只学习知识点,代码不在当下立马要用的时候不会认真去读的
阅读全文
摘要:本系列学习在.NET中的并发并行编程模式,实战技巧 本小节开始学习反应式编程。本系列保证最少代码呈现量,虽然talk is cheap, show me the code被奉为圭臬,我的学习习惯是,只学习知识点,代码不在当下立马要用的时候不会认真去读的,更何况在大多时候在手机阅读更不顺畅。 内容目录
阅读全文
摘要:本系列学习在.NET中的并发并行编程模式,实战技巧 内容目录 数据并行Fork/Join模式PLINQ 本小节开始学习数据并行的概念模式,以及在.NET中数据并行的实现方式。本系列保证最少代码呈现量,虽然talk is cheap, show me the code被奉为圭臬,我的学习习惯是,只学习
阅读全文
摘要:本系列学习在.NET中的并发并行编程模式,实战技巧 内容目录 .NET不可变集合.NET并发集合函数式数据结构设计一个不可变类 作为程序员经常遇到产品上线后出现各种莫名其妙的问题,在我本地是好好的啊,也成为程序员面对未知问题的第一反应。这种不容易复现的问题,无非就是硬件不一致和软件不一致,更多的问题
阅读全文
摘要:本系列学习在.NET中的并发并行编程模式,实战技巧 内容目录 函数式编程闭包的应用记忆化函数缓存 函数式编程 一个函数输出当做另一个函数输入。有时候一个复杂问题,我们拆分成很多个步骤函数,这些函数组合起来调用解决一个复杂问题。 在C#中不支持函数组合,但可以直接像这样调用B(A(n)),这也是函数组
阅读全文
摘要:本系列学习在.NET中的并发并行编程模式,实战技巧 函数式编程 和面向过程编程POP(procedure oriented Programming)面向对象编程OOP(object oriented programming)一样也是一种编程思维。函数式编程FP(functional programm
阅读全文
摘要:本系列学习在.NET中的并发并行编程模式,实战技巧 顺序 一次执行一个任务,按照步骤逐一完成任务,就是一次一条指令线性方式运行,下一个指令必须在上一个指令运行结束后开始。 像简单的For循环,按集合顺序执行。这是我们最常用也最不容易犯错,但容易被阻塞,以同步下载文件为例,就需要等文件下载完成落盘后进
阅读全文
摘要:知识需要不断积累、总结和沉淀,思考和写作是成长的催化剂 内容目录 老生常谈创建型1、Singleton单例2、Factory Method工厂方法3、Abstract Factory抽象工厂4、builder建造者5、Prototype原型结构型1、Adapter 适配器2、Decorator 装饰
阅读全文
摘要:知识需要不断积累、总结和沉淀,思考和写作是成长的催化剂,输出倒逼输入 内容目录 一、线程统一取消模型1、取消令牌2、可以中断的线程1、设计一个中断函数2、创建CancellationTokenSource对象3、启动线程4、取消线程执行二、跨线程访问UI基本方法1、Control.Invoke和Be
阅读全文
摘要:线程统一取消模型的基本方法和跨线程访问UI的常用套路。最后简介桌面程序BackgroundWorker组件的使用,助你更方便实现跨线程访问UI的需求
阅读全文
摘要:知识需要不断积累、总结和沉淀,思考和写作是成长的催化剂 内容目录 一、COM和.NET元数据内存管理接口注册线程编组二、.NET客户端调用COM组件三、COM客户端调用.NET组件四、嵌入互操作类型五、平台调用DllImport六、等等 一、COM和.NET COM组件对象模型是在.NET之前的一种
阅读全文
摘要:知识需要不断积累、总结和沉淀,思考和写作是成长的催化剂 梯子 一、锁1、lock2、Interlocked3、Monitor4、SpinLock5、Mutex6、Semaphore7、Events1、AutoResetEvent2、ManualResetEvent3、ManualResetEvent
阅读全文
摘要:知识需要不断积累、总结和沉淀,思考和写作是成长的催化剂 梯子 一、任务Task1、启动任务2、阻塞延续3、任务层次结构4、枚举参数5、任务取消6、任务结果7、异常二、并行Parallel1、Parallel.For()、Parallel.ForEach()2、Parallel.For3、Parall
阅读全文
摘要:知识需要不断积累、总结和沉淀,思考和写作是成长的催化剂 内容目录 一、线程Thread1、生命周期2、后台线程3、静态方法1.线程本地存储2.内存栅栏4、返回值二、线程池ThreadPool1、工作队列2、工作线程和IO线程3、和Thread区别4、定时器 一、线程Thread .NET中线程操作封
阅读全文
摘要:知识需要不断积累、总结和沉淀,思考和写作是成长的催化剂 异步多线程挺大一块内容,既想拆开慢慢学,又想一股脑全倒出。纠结再三,还是拆开吃透,也不至于篇幅过长,劝退许多人 本篇先做一个概述,列明一些基本概念 内容目录 一、进程和线程1、进程2、线程多线程后台线程3、简言之4、适用场景二、同步和异步1、同
阅读全文
摘要:知识需要不断积累、总结和沉淀,思考和写作是成长的催化剂 内容目录 一、Lambda表达式1、匿名方法2、Lambda表达式二、Linq概述三、查询操作符1、linq初见2、常用查询操作符筛选排序分组连接合并分页聚合转换四、并行Linq五、表达式树1、认识表达式目录树2、拼装表达式树3、应用六、小结
阅读全文
摘要:知识需要不断积累、总结和沉淀,思考和写作是成长的催化剂这篇很轻松,没有什么费脑子的,所以解析较少,代码较多,为数不多的拿来即用篇整个章节分布请移步 .NET开篇总括 内容目录 一、概述二、序列化1、二进制文件2、XML3、JSON三、加解密1、不可逆加密MD52、对称可逆加密3、非对称可逆加密4、一
阅读全文
摘要:知识需要不断积累、总结和沉淀,思考和写作是成长的催化剂 内容目录 一、概述二、反射1、反射使用2、创建对象3、调用方法4、字段属性三、特性四、总结 一、概述 反射其实无处不在,我们用VS进行调试时候,查看成员列表、修改变量值都是通过反射来实现的。我们写业务代码可能很少去写反射,但理解反射是从菜鸟到大
阅读全文