WSARecv

在重叠模型中,接收数据就要靠它了,它的参数也比recv要多,因为要用刀重叠结构嘛,它是这样定义的:

  int WSARecv(
  SOCKET s, // 当然是投递这个操作的套接字
  LPWSABUF lpBuffers, // 接收缓冲区,与Recv函数不同
  // 这里需要一个由WSABUF结构构成的数组
  DWORD dwBufferCount, // 数组中WSABUF结构的数量
  LPDWORD lpNumberOfBytesRecvd, // 如果接收操作立即完成,这里会返回函数调用所接收到的字节数
  LPDWORD lpFlags, // 说来话长了,我们这里设置为0 即可
  LPWSAOVERLAPPED lpOverlapped, // “绑定”的重叠结构
  LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine // 完成例程中将会用到的参数,我们这里设置为 NULL
  );
  返回值:
  WSA_IO_PENDING : 最常见的返回值,这是说明我们的WSARecv操作成功了,但是I/O操作还没有完成,所以我们就需要绑定一个事件来通知我们操作何时完成

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
易语言中的wsarecv是一个网络编程函数,用于从指定的套接字接收数据。下面是对wsarecv的详细解释: wsarecv函数的语法: wsarecv(nsocket, lpbuf, dwbufsize, lpnum, lpflags, lpoverlapped, lpcallback) 参数说明: - nsocket:指定的套接字句柄。 - lpbuf:指向一个缓冲区,用于接收数据。 - dwbufsize:缓冲区的大小。 - lpnum:指向一个变量,返回实际接收到的字节数。 - lpflags:指向一个变量,指定接收操作的附加标志。 - lpoverlapped:指向一个OVERLAPPED结构的指针,用于指定异步操作。 - lpcallback:指向一个回调函数,用于处理异步操作的完成。 wsarecv函数的功能: wsarecv函数使用指定的套接字接收数据,并将接收的数据存储到指定的缓冲区中。通过该函数,程序可以从网络中接收数据,实现网络通信功能。 wsarecv函数的返回值: - 若函数调用成功,则返回0,表示接收数据成功。 - 若函数调用失败,则返回一个错误代码,表示接收数据失败。 注意事项: - 调用wsarecv函数前,需要先创建套接字、连接服务器,并进行相应的配置。 - wsarecv函数属于同步函数,即在接收数据完成之前,会一直等待数据的到达。如果需要实现异步操作,应使用指定的OVERLAPPED结构和回调函数。 总结: wsarecv是易语言中用于接收数据的网络编程函数。通过调用该函数,程序可以从指定的套接字接收数据,并将接收到的数据存储到指定的缓冲区中。此函数在网络通信中起到了重要的作用,使程序能够实现网络数据的接收功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值