博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理

2008年4月6日

摘要: 在上一篇文章中,我们探讨了使用Thread类实现异步的方法。

在整个过程中,可以发现Delegate这个东西出现了很多次。而仔细研究Delegate,我们发现每一个Delegate类型都自动产生了Invoke、BeginInvoke、EndInvoke等方法。而BeginInvoke、EndInvoke这两个方法,我们马上就可以猜到这是用来实现异步的~~

那么我们现在就看一下怎样使用委托来实现异步。阅读全文

posted @ 2008-04-06 20:09 [虫子] 阅读(2985) 评论(15) 编辑

摘要: A Taste of AOP from Solving Problems with OOP and Design Patterns (Part III) zz阅读全文

posted @ 2008-04-06 18:10 [虫子] 阅读(145) 评论(0) 编辑

摘要: A Taste of AOP from Solving Problems with OOP and Design Patterns (Part II) zz阅读全文

posted @ 2008-04-06 18:09 [虫子] 阅读(128) 评论(1) 编辑

摘要: A Taste of AOP from Solving Problems with OOP and Design Patterns (Part I) 阅读全文

posted @ 2008-04-06 18:07 [虫子] 阅读(161) 评论(0) 编辑

摘要: 通过RealProxy是最简单的方法,缺点是不能同时加入多个代理,否则会抛异常。
实现步骤:
1、实现RealProxy的继承类
2、实现应用上述实现的RealProxy类的ProxyAttribute
3、把上述实现的Attribute应用到ContextBoundObject实例上阅读全文

posted @ 2008-04-06 18:04 [虫子] 阅读(531) 评论(2) 编辑

posted @ 2008-04-06 18:02 [虫子] 阅读(272) 评论(1) 编辑

posted @ 2008-04-06 17:59 [虫子] 阅读(224) 评论(4) 编辑

摘要: 在写程序的过程中,我们可能会需要对某些功能实现异步操作,比如记录调用日志等。

提到异步,我们最容易想到的就是多线程:我们可以启动另外一个线程,把一部分工作交给另外一个线程去执行,而当前线程继续去做一些更加急迫的事情。这里的“把一部分工作交给另外一个线程取执行”,是通过将要执行的函数的函数入口地址告诉另外一个线程来实现的,当新的线程有了函数的入口地址,就可以调用该函数。

我们先来看一下怎样使用C#中的Thread类来实现异步。
阅读全文

posted @ 2008-04-06 17:52 [虫子] 阅读(3404) 评论(20) 编辑