上一页 1 2 3 4 5 6 ··· 35 下一页
摘要: 本随笔续接:.NET 同步与异步 之 原子操作和自旋锁(Interlocked、SpinLock)(九) 至此、同步与异步 相关的常规操作(比较常见的操作)、差不多已经介绍完毕。 本随笔就着重说一下闭包、因闭包可能会导致一些意想不到的的bug。 (PS:至于 WaitHandle家族相关随笔、最后补 阅读全文
posted @ 2017-03-07 11:00 把爱延续 阅读(822) 评论(0) 推荐(1) 编辑
摘要: 本随笔续接:.NET 同步与异步之锁(ReaderWriterLockSlim)(八) 之前的随笔已经说过、加锁虽然能很好的解决竞争条件,但也带来了负面影响:性能方面的负面影响。那有没有更好的解决方案呢?有,原子操作、即 Interlocked 这个类。 一、让我们先看一个计数的原子操作Demo / 阅读全文
posted @ 2017-03-01 09:17 把爱延续 阅读(1196) 评论(0) 推荐(1) 编辑
摘要: 本随笔续接:.NET 同步与异步之锁(Lock、Monitor)(七) 由于锁 ( lock 和 Monitor ) 是线程独占式访问的,所以其对性能的影响还是蛮大的,那有没有一种方式可是实现:允许多个线程同时读数据、只允许一个线程写数据呢?答案是肯定的。 读写锁 ReaderWriterLock  阅读全文
posted @ 2017-02-23 14:51 把爱延续 阅读(9506) 评论(2) 推荐(4) 编辑
摘要: 本随笔续接:.NET同步与异步之相关背景知识(六) 在上一篇随笔中已经提到、解决竞争条件的典型方式就是加锁 ,那本篇随笔就重点来说一说.NET提供的最常用的锁 lock关键字 和 Monitor。 一、lock关键字Demo 这一组demo,代码简洁,逻辑简单,一个 AddIndex 方法 保证字段 阅读全文
posted @ 2017-01-14 15:26 把爱延续 阅读(1851) 评论(3) 推荐(0) 编辑
摘要: 在之前的五篇随笔中,已经介绍了.NET 类库中实现并行的常见方式及其基本用法,当然、这些基本用法远远不能覆盖所有,也只能作为一个引子出现在这里。以下是前五篇随笔的目录: .NET 同步与异步之封装成Task(五) .NET 实现并行的几种方式(四) .NET 实现并行的几种方式(三) .NET 实现 阅读全文
posted @ 2017-01-05 09:02 把爱延续 阅读(945) 评论(0) 推荐(0) 编辑
摘要: 本随笔续接:.NET 实现并行的几种方式(四) 前篇随笔已经介绍了几种可以实现并发的方式,其中异步方法、是最简便的方式。而 异步方式是基于 Task 和 async修饰符和await运算符实现的。 换句话说:如果我们有了Task、就有了异步方法。 在随笔:.NET 实现并行的几种方式(二) 中,已经 阅读全文
posted @ 2016-12-13 08:52 把爱延续 阅读(1376) 评论(0) 推荐(0) 编辑
摘要: 本随笔续接:.NET 实现并行的几种方式(三) 八、await、async - 异步方法的秘密武器 1) 使用async修饰符 和 await运算符 轻易实现异步方法 前三篇随笔已经介绍了多种方式、利用多线程、充分利用多核心CPU以提高运行效率。但是以前的方式在WebAPI和GUI系统上、 使用起来 阅读全文
posted @ 2016-12-01 10:26 把爱延续 阅读(2939) 评论(1) 推荐(1) 编辑
摘要: 本随笔续接:.NET 实现并行的几种方式(二) 在前两篇随笔中,先后介绍了 Thread 、ThreadPool 、IAsyncResult (即 APM系列) 、Task 、TPL (Task Parallel Library)。 写到这些笔者突然意识到 还有一个EMP系列没有写,在这里补充一下: 阅读全文
posted @ 2016-11-23 16:03 把爱延续 阅读(1028) 评论(0) 推荐(0) 编辑
摘要: 一、 UI 上两个扩展 public class VirtualizingWrapPanel : VirtualizingPanel, IScrollInfo { #region Fields UIElementCollection _children; ItemsControl _itemsCon 阅读全文
posted @ 2016-11-01 15:05 把爱延续 阅读(4377) 评论(0) 推荐(1) 编辑
摘要: DataBinding is one of the most powerful features in WPF. But because it resolves the bindings at runtime and does not throw exceptions, it's sometimes 阅读全文
posted @ 2016-10-12 11:14 把爱延续 阅读(557) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 35 下一页