zoukankan      html  css  js  c++  java
  • IOCP简单实现

    本人工作是服务端性能测试,因工作需要开发机器人框架,选用底层的时候看到网上满大街的IOCP介绍,还有说IOCP比WSAAsyncSelect复杂等等,所以只好转WSAAsyncSelect实现。

    因并发客户端需要进行调试测试,压力测试工具作为客户端来说性能十分重要,没有经过测试的鬼知道秒并发多少请求,秒并发多少connect,所以就需要实现高效服务端进行调试客户端,在工作之余又继续研究IOCP,吐槽这些无非就是,没人想过怎么优化精简流程,生搬硬套实现IOCP的处理,其实可以利用MSG和简单IOCP模型简单实现。

    下图介绍如何简单实现流程,就那么简单也不需要用到内存池,代码参考“Windows网络与通信程序设计王艳平”第四章 IOCPDemo,iocpsys这个做了太多处理,建议大家还是从IOCPDemo着手优化精简方案,

    链接: http://pan.baidu.com/s/1c2HTYLy 密码: c6r2

    主要用到的API有一下2个,其余的API和WSAAsyncSelect没多大区别,调用WSASend、WSARecv等

    CreateIoCompletionPort

    GetQueuedCompletionStatus

    看到这里,有小伙伴看到这里会说,pCompletionKey参数、OVERLAPPED结构、PerHandleData、PostQueuedCompletionStatus等等怎么都没有了,没错我把这些统统都抛弃,用另一种方式实现

  • 相关阅读:
    【HDOJ】5179 beautiful number
    【HDOJ】3459 Rubik 2×2×2
    【HDOJ】3419 The Three Groups
    【HDOJ】3085 Nightmare Ⅱ
    【HDOJ】3451 Beat drop
    【HDOJ】3309 Roll The Cube
    WP手机使用记录
    WinCE系统下应用崩溃原因的分析方法
    指针减法
    WinCE Overlay
  • 原文地址:https://www.cnblogs.com/gegelaopiaoke/p/10610190.html
Copyright © 2011-2022 走看看