代码改变世界

阅读排行榜

MSMQ 概述

2011-02-28 11:33 by DanielWise, 11695 阅读, 收藏,
摘要: 1) MSMQ概述MSMQ 表示微软消息队列服务。MSMQ 可以工作在在线或者离线场景,并提供异步编程功能。如果客户端离线,MSMQ将会是最合适的方法,这是因为服务端不需要等待客户端读取数据并向服务端返回确认。(2) 确定MSMQ 是否已经安装通过在运行窗口执行"Services",然后找到Message Queuing. 如果没有就说明MSMQ 没有安装。(3) MSMQ 安装控制面板 -> 添加/删除Windows 组件 -- 选择消息队列 - 下一步这将在你的系统中安装MSMQ,然后你可以通计算机管理来进行确认。控制面板 -> 管理工具 -> 计算机 阅读全文

WCF 第十二章 对等网 使用PNRP解决对等网络问题

2011-04-23 16:37 by DanielWise, 11366 阅读, 收藏,
摘要: PNRP是一个允许发布以及发现P2P资源信息的分布式名字解决协议。WCF使用PNRP来在一个网状网络中解析对等节点。这允许在一个对等网状网络中的参与者发现其他参与者以便于它们可以互相通信。这个协议在部分时候已经作为Windows XP一个可选的下载或者作为Windows XP SP2 的一部分。目前当你在Windows Vista中开启对IPv6的支持时会包含PNRP v2.0.PNRP在WCF中对对等通信是重要的,因为它是在一个网状网络中的邻居节点发现彼此的默认方式。注意 为Windows XP SP2 获取PNRP 2.0 PNRP 2.0 与Windows Vista 一起发布。这是一个 阅读全文

C# 线程手册 第三章 使用线程 Monitor.TryEnter()

2012-02-05 22:08 by DanielWise, 11060 阅读, 收藏,
摘要: Monitor 类的TryEnter() 方法在尝试获取一个对象上的显式锁方面和 Enter() 方法类似。然而,它不像Enter()方法那样会阻塞执行。如果线程成功进入关键区域那么TryEnter()方法会返回true. TryEnter()方法的三个重载方法中的两个以一个timeout类型值作为参数,表示按照指定时间等待锁。我们来看一个关于如何使用TryEnter()方法的例子,Monito... 阅读全文

C# 线程手册 第三章 使用线程 实现一个数据库连接池(实战篇)

2012-02-18 16:43 by DanielWise, 10338 阅读, 收藏,
摘要: 在企业级软件开发过程中,为了改善应用程序的性能需要通常使用对象池来控制对象的实例化。例如,在我们每次需要连接一个数据库时都需要创建一个数据库连接,而数据库连接是非常昂贵的对象。所以,为了节省为每次数据库调用都实例化一个数据库连接的资源,我们可以缓存并重用一些创建好的数据库连接对象并通过节省为每次数据库调用都创建一个数据库连接对象的时间和资源来大幅度提高程序性能。 对象池与图书馆很像。图书馆里维护很多书籍。当对某本书的需求增加时,图书馆就会买更多书,否则的话读者们就会一直使用同一本书。在对象池中,首先我们检查对象是否已经被创建且被放到池中,如果已经被放到池中,我们就会得到对象池中缓存的对象;如. 阅读全文

C# 线程手册 第二章 .NET 中的线程 终止/等待线程

2012-01-16 22:53 by DanielWise, 10250 阅读, 收藏,
摘要: Abort()方法可以用来终止当前线程。不论何种情况下你想终止线程,比如线程执行了太长时间或者用户取消了之前的决定,Abort()方法都很重要。在一个花费很长时间的搜索进程中你可能想使用这个方法。一个搜索引擎可能在继续运行但是用户已经看到了他们想要的结果,所以用户会终止搜索引擎所运行的线程。当在一个线程外调用Abort()方法时,会引发一个ThreadAbortException异常。如果线程代码中没有捕获这个异常,那么线程将会终止。在为一个可能被多线程上下文访问的方法写异常处理代码时要多考虑一下,比如该使用Catch(ThreadAbortException)的地方不要使用Catch(Exc 阅读全文
上一页 1 2 3 4 5 6 ··· 52 下一页