美文网首页C++
C++网络编程

C++网络编程

作者: MagicalGuy | 来源:发表于2018-10-08 14:30 被阅读23次

网络编程的步骤

  • WSAStartup
  • socket
  • bind
  • listen
  • accept
  • send/recv
  • closesocket
  • WSACleanup

消息(异步/窗口)选择模型

  • WSAStartup
  • socket
  • bind
  • listen
  • 创建窗口
  • WSAAsyncSelect(套接字,窗口句柄,消息,网络事件)
  • 响应绑定的消息
  • accept/recv/send/close
  • 消息处理函数:wparam是绑定的套接字 lparam是网络事件或通知码

事件选择模型

  • WSAStartup
  • socket
  • bind
  • listen
  • 创建事件WSACreateEvent
  • WSAEventSelevet(套接字,事件(内核对象),网络事件) 绑定的网络事件被触发的时候激活事件内核对象
  • WSAWaitforXXX,等待事件(内核对象)被激活
  • Wait函数的返回值就是事件内核对象在数组中的索引值
  • 通过WSAEnumXXX获取触发的是什么网络事件
  • accept/recv/send/close

完成端口模型

  • WSAStartup
  • socket
  • bind
  • listen
  • while(accept)
  • accept返回接收到的客户端连接后,向完成端口队列提交一次recv任务,当对方send消息过来时,完成端口帮我完成recv操作
  • 处理完上次的recv请求后,继续向完成端口提交下一个recv请求

相关文章

网友评论

    本文标题:C++网络编程

    本文链接:https://www.haomeiwen.com/subject/vipkaftx.html