摘要:
概述 到目前为止我们使用多线程应用程序的目的是尽可能多地使用计算机处理器资源。所以,看起来我们仅需要为每个独立的任务分配一个不同的线程,并让处理器确定在任何时间它总会处理其中的某一个任务。额,对小系统来说这样做很好。但是当系统越来越复杂时,线程的数量也会越来越多,操作系统将会花费更多时间处理锁分配,理清线程之间的关系,处理程序指令的时间实际上是很少的。为了让我们的程序具备可扩展性,我们将不得不对线程进行一些控制。 对那些生存周期比较短的线程来说,使用线程池来处理任务要比为每个任务都创建一个线程然后顺序地回收它们要高效得多。一个任务,在概念上说,可以是一个单一方法的执行过程或者一系列方法的执行过 阅读全文
阅读排行榜
WCF 第一章 基础 完成一个WCF服务客户端
2011-06-22 21:18 by DanielWise, 2406 阅读, 收藏,
摘要:
当需要和服务通信时WCF为客户端提供了丰富的API。通过Service.ServiceModel实现的API处理将.NET类型转换成XML然后从客户端向服务端发送消息。你可以直接用API编程,或者你可以使用工具生成一个代理类和配置文件。在这一部分,我们将首先说明如何使用代码直接调用服务,然后我们将使用工具实现这个过程。前一种方法使用较少的代码并不使用配置文件。后一种方式有更少的依赖性而且在调用时有更好的微控性。每种解决方案都有很多最佳适用情况。完全使用代码写一个WCF客户端就像一个服务终结点必须定义一个WCF的ABCs在网络上暴露服务接口,一个客户端必须知道ABCs来访问这些服务。因此,当书写 阅读全文
WCF 第六章 序列化和编码 为自定义序列化使用XmlSerializer
2010-12-21 22:04 by DanielWise, 2387 阅读, 收藏,
摘要:
DataContractSerializer是WCF中优先选择的序列化方法。然而,有时你需要使用默认序列化方法以外的方法。一个改变序列化方法的选项是使用XmlSerializer,包括实现自定义序列化的能力,共享类型和支持原有网络服务的能力。对DataContractSerializer,XmlSerializer是WCF集成的一部分。这部分主要查看下XmlSerializer并讨论它如何用来控制XML输出。 DataContractSerialzier总是使用XML元素进行序列化而不是使用XML属性。列表6.31显示了一个使用DataContractSerializer的Employee实例 阅读全文
WCF 第十章 异常处理 系列文章
2011-07-10 08:44 by DanielWise, 2384 阅读, 收藏,
摘要:
上一个系列主要描述如何知道你的WCF服务正在做什么以及出问题时候底层在做什么?我们不能保证WCF服务一直稳定运行,但我们可以保证在WCF出现异常时可以第一时间找到问题。本篇主要描述WCF中的异常处理方法,因为没有人敢保证复杂系统中没有任何异常,一个完整系统的异常处理系统也应该是非常强大的,WCF中的异常处理可以帮助我们在面对类似事情时更加从容一些。[第1篇] 异常处理软件开发中最残酷的现实是纵然非常小心地完成的系统也有崩溃和不曾预料的场景发生。一个好的开发人员要保证在创建阻止问题发生的软件和处理由软件导致错误的能力的一个平衡。基于服务的分布式系统没有异常。事实上,基于服务的分布式系统通过引入诸 阅读全文
C# 线程手册 第一章 线程定义 中断和局部线程存储
2012-03-06 20:29 by DanielWise, 2374 阅读, 收藏,
摘要:
中断和局部线程存储是如何工作的? 当一个线程用完了分配给它的时间片以后,它不会停止而是再次排队等待。每个处理器在同一时间只能处理一个线程,所以当前线程不得不离开(被从处理器中移出)。然而,在线程跳出执行之前,它得将离开前的状态信息保存下来以便于再次执行。如果你的记性不错,这个功能就称作线程本地存储(TLS).一个线程的本地线程存储包含寄存器,堆栈指针,调度信息,内存中的地址空间以及其他正在使用的... 阅读全文
浙公网安备 33010602011771号