摘要: is运算符有些类型之间的转换并不是能够转换成功,强制的转换反而会抛出一些异常,那么,可以使用is运算符来检查转换是否可以转换成功。is的语法如下:variable is NewType如果variable可以通过引用转换、装箱转换和拆箱转换的方式转换为NewTyp... 阅读全文
posted @ 2018-04-07 22:11 huey-chan 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 计时器可以一种定时的方式异步的重复运行,这里简单的讲解举例一下System.Threading命名空间中的Timer类。参考文档:https://msdn.microsoft.com/zh-cn/library/system.threading.timer(v=vs.... 阅读全文
posted @ 2018-04-06 12:51 huey-chan 阅读(181) 评论(0) 推荐(0) 编辑
摘要: 最近看书,看到了可以利用学过的委托知识实现异步编程,这里做一个简单的说明示例。如果委托对象在调用列表中只有一个方法(引用方法),他就可有异步执行这个方法。委托类有两个方法,BeginInvoke和EndInvoke。当我们调用委托的BeginInvoke方法时,它开始... 阅读全文
posted @ 2018-04-06 04:01 huey-chan 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 这里简单的介绍一下.net中的任务并行库。简单的并行循环Parallel.For和Parallel.ForEach。我们常见的for和foreach循环分别对应并行循环Parallel.For和Parallel.ForEach。参考文档:https://msdn.mi... 阅读全文
posted @ 2018-04-05 22:01 huey-chan 阅读(666) 评论(0) 推荐(0) 编辑
摘要: 前面学习了async/await特性来异步处理任务,BackgroundWorker可以在需要另建一个线程,并且后台持续的完成某项工作,而且可以和主线程进行交互通信。参考文档:https://msdn.microsoft.com/zh-cn/library/syste... 阅读全文
posted @ 2018-04-05 19:57 huey-chan 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 书上看到一个Task.Yield例子,Task.Yield方法创建一个立即返回的awaitable。等待一个Yield可以让异步方法在执行后续的部分时返回到调用方法。可以理解为离开当前的消息队列,回到队列末尾,让处理器有时间处理其他任务。Yield方法在GUI编程中非... 阅读全文
posted @ 2018-04-05 18:25 huey-chan 阅读(519) 评论(0) 推荐(0) 编辑
摘要: 前面讲了Task.WaitAll和WaitAny同步的等待Task完成,在异步方法中,我们希望用await表达式等待Task,这里使用Task.WhenAll和WhenAny方法来实现等待一个或者多个任务完成。修改Main函数,添加一个异步方法,代码如下:static... 阅读全文
posted @ 2018-04-05 17:06 huey-chan 阅读(365) 评论(0) 推荐(0) 编辑
摘要: 前面讲了《.net中async/await异步编程》,如果方法中使用了多个异步方法,该如何同步的等待Task完成?Task.WaitAll 等待提供的所有 System.Threading.Tasks.Task 对象完成执行过程。DownLoadTest dwtest... 阅读全文
posted @ 2018-04-05 16:29 huey-chan 阅读(433) 评论(0) 推荐(0) 编辑
摘要: 已经介绍过async/await异步编程,但是按照一般的异步编程的步骤,在asp.net mvc页面中使用异步编程好像会经常报一个错误,错误信息如下:现在无法开始异步操作。异步操作只能在异步处理程序或模块中开始,或在页生存期中的特定事件过程中开始。如果此异常在执行 P... 阅读全文
posted @ 2018-04-04 16:46 huey-chan 阅读(796) 评论(0) 推荐(0) 编辑
摘要: 引用类型直接进行“=”来复制是不可以的,简单的复制成员可以通过派生在System.Object中的MemberwiseClone()方法来完成。这是一个受保护的方法。我们简单的代码实现如下: public abstract class Animal { ... 阅读全文
posted @ 2018-03-27 01:36 huey-chan 阅读(202) 评论(0) 推荐(0) 编辑