Winsock的同步异步模式

同步&异步

同步对应阻塞方式,异步对应非阻塞方式。
同步意思就是,我不但要发送信息,还要等到信息被处理完才走,比较负责,易用,但效率低。异步套接字使用复杂,但效率高。
SendMessage函数就是同步函数,PostMessage是异步函数。
Winsock提供了5种I/O模型来解决异步问题,它们是select,WSAAsyncSelect(异步选择),WSAEventSelect(事件选择),overlapped(重叠)和completion port(完成端口)。
select适用于阻塞式套接字,也适用于非阻塞(异步套接字),

面向连接和无连接协议之间的区别

面向连接和无连接指的都是协议。也就是说,这些术语指的并不是物理介质本身,而是用来说明如何在物理介质上传输数据的。面向连接和无连接协议可以,而且通常也确实会共享同一条物理介质。
区别:
对无连接协议来说,每个分组的处理都独立于所有其他分组,而对面向连接的协议来说,协议实现则维护了与后继分组有关的状态信息。

面向连接的流协议中:通信双方数据是没有边界标志的,也就是说双方必须自行建立数据的边界标志从而确定具体的数据内容。这也意味着通信双方调用send()和recv()函数次数是不一定匹配的
采用无连接的数据报协议时:通信双方发送的数据是边界保持的,即调用一次recvfrom函数接收到的数据一定是sendto函数发送的完整数据包,这个完整的数据包被称为数据报! 通信双方正确通信时调用recvfrom和sendto函数是一样的。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值