开发语言
文章平均质量分 66
DreamFreeLancer
这个作者很懒,什么都没留下…
展开
-
用string_builder_t高效格式化字符串,源码已上传
烽驿2009开源实时通信平台 源码获取:svn checkout http://fy2009.googlecode.com/svn/trunk/ fy2009-read-only 字符串拼装或格式化是软件开发中经常使用的功能。对于通信软件,随着各类文本协议(如基于HTTP或XML)的日趋流行,这种需求更普遍。多数编程语言也都提供了这类服务,C中的可用方法主要是sprintf,C++中既可原创 2009-05-14 16:54:00 · 1997 阅读 · 1 评论 -
异步IO框架实现之完成端口(Completion Port)
烽驿2009开源实时通信平台 源码获取:svn checkout http://fy2009.googlecode.com/svn/trunk/ fy2009-read-only 微软在Windows 2000之后提供了真正可伸缩(Scalable)的异步IO机制,即完成端口。本异步 IO框架(有关该框架的详细介绍请参:http://blog.csdn.net/DreamFreeLanc原创 2009-07-31 23:33:00 · 4166 阅读 · 2 评论 -
对象流化与基于内存的流实现
烽驿2009开源实时通信平台 源码获取:svn checkout http://fy2009.googlecode.com/svn/trunk/ fy2009-read-only 将一个对象转换成字节流形式,或从这种字节流中还原出对象是通信及存储类软件中最普遍的操作之一。对该类操作的称谓则五花八门:编码/解码(Encode/Decode);序列化/反序列化(Serialize(TRUE/原创 2009-05-27 14:58:00 · 1315 阅读 · 0 评论 -
GCC的Link行为
编译器:G++OS:LINUX 1.link顺序GCC Link程序在.o文件列表中查找被引用实体(函数或Class)时不设定顺序,即引用实体所在.o文件出现在被引用实体所在的.o文件的左侧,或右侧都能通过编译,不会出现找不到引用的错误但若从.a文件列表中搜索被引用实体,情况将不同,总是则从右向左顺序查找,因此,被引用实体所在.a文件必需出现在引用实体所在.a文件的右侧,否则,原创 2009-05-26 09:11:00 · 8258 阅读 · 0 评论 -
不加锁的线程间通信
烽驿2009开源实时通信平台 源码获取:svn checkout http://fy2009.googlecode.com/svn/trunk/ fy2009-read-only 在线程间共享内存时需要加锁应该算是多线程编程的常识了,因此,这个标题显得有些颠覆性。但请注意这里说的是共享内存,而标题说的是通信,两者并不是一回事,仔细分析,后者在内涵上应该包括前者,即通信才是目的,而原创 2009-06-01 10:28:00 · 6719 阅读 · 1 评论 -
Windows下CriticalSection和Mutex的性能比较
Windows下100万次加/解锁测试:CriticalSection用时:31msMutex用时:953ms结论:CriticalSection性能远远高于Mutex(高出约30倍)。因此,在能用CriticalSection时绝不用Mutex,当然,后者可命名,而前者不行,因此,Mutex可用于进程间通信,但CriticalSection通常只能用于线程间通信。另外,Windo原创 2009-06-02 21:55:00 · 4990 阅读 · 1 评论 -
高性能日志服务
烽驿2009开源实时通信平台 源码获取:svn checkout http://fy2009.googlecode.com/svn/trunk/ fy2009-read-only 笔者在博文《系统localtime性能评测》(http://blog.csdn.net/DreamFreeLancer/archive/2009/05/06/4155180.aspx)中曾提及日志对于大型服原创 2009-06-07 23:48:00 · 4508 阅读 · 0 评论