C#
摘要: 本文章介绍了由于如何通过同步技术解决由于多个线程互相竞争(竞态条件)而导致的数据异常的情况(读脏数据),还揭示了同步技术可能带来的副作用:死锁,以及如何来有效地避免死锁
阅读全文
摘要: 本文讲解了线程池类System.Threading.ThreadPool的使用,在最后,利用ThreadPool和Thread实现了一个文件下载服务器,以使读者可以更好地理解ThreadPool在程序中的角色。
阅读全文
摘要: 本文介绍了Thread类的各种用法,如向线程传递参数的几种方法、前后台线程、判断多个线程是否已经结束等。
阅读全文
摘要: 本文介绍了线程的基础知识,以及如何使用委托(Delegate)的BeginInvoke和EndInvoke方法进行异步调用。最后还介绍了如何利用其他.net组件的BeginXXX和EndXXX方法进行异步操作,如HttpWebRequest可以通过BeginGetResponse和EndGetResponse方法异步发送请求,并获得响应信息。
阅读全文
摘要: 本文讨论了如何使用C#2.0实现抓取网络资源的网络蜘蛛。使用这个程序,可以通过一个入口网址(如http: //www.comprg.com.cn)来扫描整个互联网的网址,并将这些扫描到的网址所指向的网络资源下载到本地。然后可以利用其他的分析工具对这些网络资源做进一步地分析,如提取关键词、分类索引等。也可以将这些网络资源作为数据源来实现象Google一样的搜索引擎。
阅读全文
摘要: CodeDOM是.net framework的一项重要的源代码生成技术。本文详细讨论了CodeDOM的原理以及如何利用CodeDOM技术实现一个与语言无关的Code Wizard。并给出了一个用C#语言实现的例子。
阅读全文
摘要: 时间要追溯到2005年。那时正在做硕士论文。题目是“AOP framework for .net”。这个AOP框架将使用C#2.0来实现。 这当然没什么令人惊奇的。从理论上说,任何开发语言都可以实现AOP框架。但要按着AOP联盟的规范实现这个AOP框架,大多数的开发语言并不能很容易地完成这项任务。微软公司在我们心目中是强大的,而出自于微软的C#自然也会被认为是强大的。使用C#几乎可以很容易地完成大多数的应用程序(包括桌面、Web、移动等)。但要用C#来实现标准的AOP框架却不是那么容易,甚至有点强人所难。这到底是为什么呢?
阅读全文