摘要: 一. 托管资源的分配CLR在运行时管理着一段内存地址空间(虚拟地址空间,在运行中会映射到物理内存地址中),分为“托管堆”和“栈”两部分,栈用于存储值类型数据,它会在方法执行结束后自动销毁其中引用的值类型变量,这一部分不属于垃圾收集的范围。托管堆用于引用类型的变量存储,是垃圾收集的关键阵地。托管堆是一段连续的地址空间,其中所分配出去的空间呈现出类似数组形态的队列结构:NextObjPtr是托管堆所维护的一个内存指针,指示下一个对象分配的内存起始地址,它会随着内存的分配而不断移动(当然也会随着内存垃圾回收而发生移动),永远指向下一个空闲的地址。到了这里,我们不妨与C++比较一下内存分配机制的效率( 阅读全文
posted @ 2014-03-19 20:52 chinaagan 阅读(216) 评论(0) 推荐(0) 编辑
摘要: 关于DatacontractAttribute的使用规则和说明,DatacontractAttribute是序列化类的另一种方法,和XmlMemberAttribute(也就是XmlElementAttribute)使用比较像。它的命名空间是System.Runtime.Serialization。不同点:DatacontractAttribute,必须定义DataMember,否则不序列化该字段;XmlMemberAttribute,默认是XmlElement。序列化方法不一样,DatacontractAttribute使用DataContractSerializer;另一个使用XmlSer 阅读全文
posted @ 2014-03-09 21:59 chinaagan 阅读(902) 评论(0) 推荐(1) 编辑
摘要: 学习了XmlAttribute,XmlElement属性的定义和使用。Order类定义using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Xml.Serialization;namespace Artech.XmlSerializerDemos{ [XmlRoot("Ord",Namespace="http://www.artech.com")] public class Order { private double 阅读全文
posted @ 2014-02-25 22:12 chinaagan 阅读(817) 评论(0) 推荐(0) 编辑
摘要: XmlSerializer是对xml进行序列化操作的对象。写了一个Order的序列化方法供留念。序列化针对有get,set的属性;属性必须是public方式;对象顺序和序列化的顺序一致。对象定义using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace Artech.XmlSerializerDemos{ public class Order { private double _totalPrice; private Guid _i... 阅读全文
posted @ 2014-02-24 21:53 chinaagan 阅读(522) 评论(0) 推荐(0) 编辑
摘要: 单件模式概念:保证一个类仅有一个实例,并提供一个访问它的全局访问点。我之前的概念搞混了,以为只要一个实例就是单件模式。它最主要的是提供一个访问它的全局访问点,也就是多次访问,一个类的实例地址。代码如下:using System;namespace GlobalSpooler{ /// /// Summary description for Spooler. /// public class Spooler { private static Spooler MySpooler ; private static bool instan... 阅读全文
posted @ 2014-02-20 22:24 chinaagan 阅读(142) 评论(0) 推荐(0) 编辑
摘要: View Code 今天学习了WCF回调代码,可能的异常,注意点。1.配置项的大小写要注意。把配置项,红色部分没有注意大小写问题,导致了程序加载类异常。应该是binding="netTcpBinding"。2.回调时不能关闭Tcp连接。3.防止调用时的死锁。需要再契约上使用属性[OperationContract(IsOneWay=true)]。源码地址:http://pan.baidu.com/s/1ntyP1ZN框架图原程序Sevicesusing System;using System.Col... 阅读全文
posted @ 2014-01-07 22:14 chinaagan 阅读(333) 评论(0) 推荐(0) 编辑
摘要: 监听端创建信道Listener,代码using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.ServiceModel;using System.ServiceModel.Channels;namespace Artech.MessagingVisBinding.Listener{ class Program { static void Main(string[] args) { Uri listenU... 阅读全文
posted @ 2013-10-22 23:48 chinaagan 阅读(246) 评论(0) 推荐(0) 编辑
摘要: TcpTrace路由解析,参考页面-http://www.cnblogs.com/artech/archive/2008/09/19/1294227.html。TcpTrace工具下载地址:http://www.piaodown.com/soft/43538.htm原理:模拟路由的方式进行客户端的消息转发,回复。如图:代码结构如下:分别为ICalculator:using System.Linq;using System.Text;using System.ServiceModel;namespace Artech.TcpTraceDemo.Contracts{ [ServiceCont... 阅读全文
posted @ 2013-10-10 22:46 chinaagan 阅读(344) 评论(0) 推荐(0) 编辑
摘要: WCF终结点和寻址之--AddressHead信息匹配代码Contracts契约 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.ServiceModel; 6 7 namespace Artech.WcfServices.Contracts 8 { 9 [ServiceContract(Name="CalculatorService",Namespace="http://www.artech.c 阅读全文
posted @ 2013-09-26 22:33 chinaagan 阅读(235) 评论(0) 推荐(0) 编辑
摘要: 商旅结算系统商旅结算是一个结算系统,对商旅的订单(包括机票/酒店/增值订单)进行处理,数据进行加工,监控;和商旅客户进行结算。日常的工作主要有,商旅结算系统,数据前段展示的水晶报表CrystalReport,商旅结算客户端Cbooking。商旅结算系统,模块:5079--商旅结算工作平台;1477—账户基本信息维护;2076--消费明细处理;3374--收款单管理;4144—发票管理;5674/5655/5656—酒店/机票返利操作页面等。主要流程,主账户信息维护。有商旅公司/主账户/子账户/Uid卡号(Uid卡号和用户关联)/服务费/返利信息信息。账户结算周期的信息维护,按月/半月/旬(10 阅读全文
posted @ 2013-08-29 21:04 chinaagan 阅读(1577) 评论(2) 推荐(0) 编辑