C++网络编程模型、多线程

本文探讨了C++中的网络通信编程,包括TCP和UDP的Server和Client实现,详细介绍了WSAAsyncSelect、WSAEventSelect和完成端口三种网络模型。此外,还讨论了多线程技术,如原子、临界区、互斥体、信号量和事件,分析了各种同步机制的优缺点。
摘要由CSDN通过智能技术生成
1、网络通信编程
  • 1)网络通信模型基础知识

    • TCP

    Server:

  WSAStartup()
  socket()
  bind()
  linsten()
  accept()
  send/recv()
  closesocket()
  WSACleanup()

Client:

  WSAStartup()
  socket()
  connect()
  recv/send()
  closesocket()
  WSACleanup()
    • UDP

    客户端A

  socket()
  bind()
  send()
  recv()
  close()

客户端B

  bind()
  recv()
  send()
  close()
  • 2)网络模型

    • WSAAsyncSelect模型

    创建窗口(CreateWindows)/对话框然后为该窗口提供一个窗口回调函数(WinProc)/对话框函数。

    通过调用WSAsyncSelect函数自动将套接字设置为非阻塞模式,并注册一个或多个感兴趣的网络事件。

    • WSAEventSelect模型

    WSAEventSelect模型是以事件的形式通知应用程序。

    1)创建事件对象,注册网络事件 WSACreateSelect()/WSAEventSelect()

    2)等待网络事件发

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值