08 2012 档案

摘要:最近学习UDP编程,头都搞大了,找了不少资料,也请教了不少同行,自认为下面这篇资料写的很好,所以收藏之,以供参考. 1.在进行UDP编程的时候,我们最容易想到的问题就是,一次发送多少bytes好? 当然,这个没有唯一答案,相对于不同的系统,不同的要求,其得到的答案是不一样的,我这里仅对 像ICQ一类的发送聊天消息的情况作分析,对于其他情况,你或许也能得到一点帮助: 首先,我们知道,TCP/IP通常被认为是一个四层协议系统,包括链路层,网络层,运输层,应用层. UDP属于运输层,下面我们由下至上一步一步来看: 以太网(Ethernet)数据帧的长度必须在46-1500字节之间,这是... 阅读全文
posted @ 2012-08-11 14:11 小麻雀 阅读(546) 评论(0) 推荐(0) 编辑
摘要:C#中有两种类型变量,一种是值类型变量,一种是引用类型变量。【浅拷贝就是表面上拷贝了地址;深拷贝就是拷贝了内容 】 对于值类型变量,copy是属于全盘复制; 而对于引用类型变量,一般的copy只是浅copy,相当于只传递一个引用指针一样。 因此对于引用类型变量进行真正copy的时候,也是最费事的。 浅拷贝 只是复制本身,它包含的对象只是复制引用,其中包含的对象就直接拿来用了,这样产生的问题就是:如果一个被修改了,另一个也跟着变。是这样的,但是除了string类型外,string类型,本来属于引用类型,因此在进行复制的时候,采用的是浅拷贝,但当发生变化的时候,系统会自动生成进行深copy。 对象 阅读全文
posted @ 2012-08-06 16:46 小麻雀 阅读(5813) 评论(0) 推荐(0) 编辑
摘要:最近由于在做聊天调度服务,场景是这样的,集群聊天服务器,每台服务通过socket按照一定的频率发送UDP数据包给调度服务器,调度服务器接收各台聊天服务器发来的数据包,然后进行相应的数据分析,最后裁定目前最空闲的聊天服务器,以供聊天用户实时快速连接最优服务器,我考虑使用Dictionary数据结构来缓存收集到的服务器汇总数据,开发的过程中遇到几个比较棘手的问题:1、收集的数据是通过多线程进行的,这样造成Dictionary线程安全的问题。针对Dictionary线程安全的问题,我通过继承IDictionary,重新构造线程安全Dictionary对象,这里其实没有什么复杂的,只是在Diction 阅读全文
posted @ 2012-08-06 16:44 小麻雀 阅读(11691) 评论(0) 推荐(2) 编辑

点击右上角即可分享
微信分享提示