}
«网站首页

qiaojie

关注此人
把qiaojie加为好友
附言:



最新动态
  • qiaojie 评论博客:放过设计模式吧 2012-03-12 18:16
    看了半天没看明白楼主在吐槽什么,我来评价一下:设计模式大部分已经过时了,谈论设计模式也已经out了。
    当初GoF总结的设计模式是为了解决C++面向对象程序设计过程中的一些普遍问题而总结出来的一套最佳设计方法,对于其他编程语言并不完全适用。另外就GoF本身而言,在实践中对面向对象设计的指导作用也非常有限,如楼主所言存在着诸多误解和胡乱套用,误导多于指导。所以,现在业界也不再热衷于总结设计模式,在GoF之后也很少再有具有影响力的设计模式被提出来。
  • qiaojie 评论博客:IOCP编程小结(中) 2012-03-11 15:06
    @leaber
    对象的生存期判断我是在引用对象的时候记录一个cookie,下次访问的时候如果对象被释放或者重新分配,那么cookie就会不同,于是就可以判断出原来那个对象不存在了。
  • qiaojie 评论博客:IOCP编程小结(中) 2012-02-23 17:16
    @sniperHW
    你这么做也是可以的,但是分配Packet的话会牵涉到动态内存分配。我文章中提到的环形缓冲区只管分配不需要释放,效率比动态分配的要高,而传递给Send的buf数据是在栈上构造的,也不需要释放。如果一定要避免内存拷贝的话可以把AllocSendBuffer函数暴露出来供上层使用,因为感觉这样接口比较罗嗦就没这么干。
  • qiaojie 评论博客:IOCP编程小结(中) 2012-02-23 16:45
    @sniperHW
    因为Send是异步函数,收到完成通知后上层调用者没机会去释放内存,只能交给Send函数来释放,让底层去释放上层传递过来的内存这个味道相当不好,相当于你在Send函数里写:
    Send(char* buf, ine len){
    send(socket, buf, len);
    free(buf);
    }
    所以在底层另外分配内存以保存发送数据。多一次内存拷贝降低了上层与底层的耦合性,这是值得的。
  • qiaojie 评论博客:IOCP编程小结(中) 2012-02-23 15:26
    @sniperHW
    因为关闭了socket的发送缓冲区,send操作无法立刻完成,必须把数据保存在用户自己的缓冲区内等待系统发送。关闭socket发送缓冲区的原因文章里已经说明了。
  • qiaojie 发表博客:IOCP编程小结(中) 2012-02-04 17:54
    上一篇主要谈了一些基本理念,本篇将谈谈我个人总结的一些IOCP编程技巧。
  • qiaojie 评论博客:IOCP编程小结(上) 2012-02-03 12:22
    @不能飚车
    下一篇主要会介绍一些我总结出来的IOCP的编程技巧,跟一般网络上可以找到的文章大不相同,请大家关注。
  • qiaojie 发表博客:IOCP编程小结(上) 2012-02-02 14:11
    前段时间接手了一个网络游戏前端连接服务器的开发工作,由于服务器需要在windows平台上部署,并且需要处理大量的客户端连接,因此采用IOCP来做为服务器端的编程模型就成了不二选择。虽然我对服务器开发...
  • qiaojie 发表博客:MinGW旧版本的存档 2011-06-07 16:46
    最近需要在windows上编译一个开源软件,需要安装MinGW-gcc-3.3.1这个版本,在MinGW的官网和sf上找了半天都找不到旧版本的下载,新版本又不能编译,真是愁死人啊,google了老半天...
  • qiaojie 发表博客:坑爹的SDL 2011-03-21 15:40
    最近在玩Virtual Box,感觉非常不错。但是在用VBoxSDL.exe启动虚拟机的时候碰到点问题,在windows7 x64下SDL会运行报错:SDL Error: 'DirectInputDe...
  • 近日拜读了陈硕大牛的文章C++ 工程实践(5):避免使用虚函数作为库的接口,文章的观点认为应该避免使用C++的class纯虚函数来定义API接口,并以COM作为反向教材进行批判,对此本人有些不同意见,...
  • 功,赢在游戏性以及成功的市场营销上。技术就是技术,不懂技术如何正确评价技术?用“审美来直觉体验小鸟的深刻技术内涵”,这是一件多么扯淡的事情啊。...
  • 小鸟显然不是赢在技术上,比他模拟的复杂模拟的真实的物理引擎多的是,难点在于利用物理做出游戏性来。
  • qiaojie 评论博客:C# 高性能写文件 —— 只为挨砖 2011-02-25 18:04
    用多线程同时写多个文件只会更慢,磁头要来回在多个文件之间跑来跑去,想想就觉得慢啊。
  • qiaojie 发表博客:用SSE2实现NV12转RGB32 2011-02-25 17:55
    最近要用到Intel的media SDK播放H264视频,发现intel的SDK转码出来的帧缓冲是NV12像素格式的,需要自己转换成RGB32格式。虽然这种代码网上找找一大堆,但还是自己动动手吧。go...
  • @doggo
    当然没那么简单了
    比如:test "this is test"
    你这方法就不行了。
  • 以前我都是使用TrueCrypt来虚拟磁盘,用来加密存放我的工作文件,现在有了VHD再配合Win7自带的BitLocker就可以让系统来实现这个功能了,相比TrueCrypt来说有更强大的功能,不过在...
  • 把一个把字符串分解成命令行参数是很常见的操作,一直很纳闷为什么.net没有提供相关的功能,自己写一个又觉得麻烦。幸好windows提供了一个API来干这个事情。不过这个API调用起来颇为麻烦,goog...
  • qiaojie 发表博客:在ECUG2010上的演讲稿 2010-11-09 22:19
    10月中旬去北京参加了ECUG2010大会,并在会上做了并行计算方面的一场演讲,这里把演讲的PPT,测试代码还有演讲视频的链接一并放上。基于多核系统的并行算法和实例分析测试代码演讲的视频
  • qiaojie 发表博客:关于3Q大战和反垄断 2010-11-06 20:55
    最近的互联网很热闹,起因是360和QQ之间爆发了一场据称是史上最惨烈的战争,周鸿祎虽然是个老流氓,但这次他牢牢的占领了道德制高点,让我预感腾讯将在这次大战中惨败。谁是谁非暂且不谈,这次的3Q大战让我们...
  • Parallel.For可以算是并行计算的基石了,有了他可以解决90%以上的并行计算问题。当然了,他的实现实在是简单的不值一提,先发一个我写的C#实现,下回我们就以它为基础来讲解如何实现并行计算。对于...
Top