2013年10月12日

C# 4.0 默认值参数

摘要: 在C#4.0以前我们设计的函数如果需要进行可选参数的设计一般得做法就是设计两个函数,然后进行调用比如:设计一个关于两个数相加的函数其中一个参数是可选的在4.0以前是一般是这样的: public const int defaultValue = 3; // 默认值参数的声明 public static int Add(int x, int y) { return x + y; } public static int Add(int x) { return x + defaultValue;// 或者 //return Add(x+defaultValue); }我们需要编写两个函数式比较费事的, 阅读全文

posted @ 2013-10-12 13:57 荣锋亮 阅读(234) 评论(0) 推荐(0) 编辑

.NET内存映射文件原理、创建及进程通讯

摘要: 操作系统很早就开始使用内存映射文件(Memory Mapped File)来作为进程间的共享存储区,这是一种非常高效的进程通讯手段。Win32 API中也包含有创建内存映射文件的函数,然而,这些函数都运行于非托管环境下,在.NET中只能通过平台调用机制来使用它们,用起来很不方便。幸运的是,.NET 4.0新增加了一个System.IO. MemoryMappedFiles命名空间,其中添加了几个类和相应的枚举类型,从而使我们可以很方便地创建内存映射文件。 1 内存映射文件原理 所谓内存映射文件,其实就是在内存中开辟出一块存放数据的专用区域,这区域往往与硬盘上特定的文件相对应。进程将这块内存.. 阅读全文

posted @ 2013-10-12 13:22 荣锋亮 阅读(491) 评论(0) 推荐(0) 编辑

.net 异常捕获

摘要: .Net 下未捕获异常的处理 随着.Net技术的发展,.Net技术被逐渐应用到很多大型的应用软件项目中。这些项目的规模越来越大,很多项目中除了自己的代码外还引用了很多第三方的.net组件。同时很多项目又被应用到很多关键的部门,软件系统的稳定性越来越至关重要。由于.Net 框架提供了非常强大的异常处理机制,同时对一些非托管代码很难控制的系统问题比如指针越界,内存泄漏等提供了很好的解决方案。相比非托管代码构建的系统,.Net构建的系统更加稳定。不过这并不是说.Net构建的系统就完全无懈可击,很多由于代码的不严谨或者系统问题引发的故障将会导致.Net应用程序产生未捕获异常,从而导致应用程序异常终.. 阅读全文

posted @ 2013-10-12 11:57 荣锋亮 阅读(652) 评论(0) 推荐(0) 编辑

Broker 模式

摘要: 使用Broker模式可以隐藏远程服务调用的实现细节,方法是将这些细节封装到一个与业务组件自身不同的层 [Buschmann96]。这个层为客户端提供一个接口,使客户端可以像调用任何本地接口一样调用方法。但是,客户端接口内的方法会触发要对远程对象执行的服务。这对客户端是透明的,因为远程服务对象实现了相同的接口。该模式将启动远程服务调用的业务组件当作"客户端",而将响应远程服务调用的组件当作"服务器"。图 1 显示没有进行任何分布的简单示例的静态结构。客户端直接调用服务器上的performFunctionA方法。仅当服务器对象与客户端对象驻留在同一台计算机上 阅读全文

posted @ 2013-10-12 11:04 荣锋亮 阅读(899) 评论(0) 推荐(0) 编辑

导航