Unix网络编程相关错误码和信号处理

博客搬家,原地址:https://langzi989.github.io/2018/02/04/Unix网络编程相关错误码总结/

特别注意当出现一下错误码时,处理之后一定要将errno复位为0

在网络编程的过程中会出现一些错误码,下面总结:

  • EAGAIN(11) : Resource temporarily unavailable

    • 错误原因:当将套接字设置为异步时,由于函数调用之后是立即返回的,所以会出现两种情况导致这个错误:(1):当调用read函数,此时没有数据可读,此时read函数会立即返回错误码EAGAIN表示此时无数据可读(2):当调用write函数,此时缓冲区满,write函数将会立即返回错误码EAGAIN。
    • 解决方法:EAGAIN错误表示此时无数据可读或者缓冲区已满,所以此时只需要重试即可。
  • ECONNRESET(104):Connection reset by peer

    • 错误原因:当对端socket已关闭,此时调用read或write函数将返回ECONNRESET错误,在之后如果继续调用read或write,就会得到该错误。常见的原因是发送端接收端实现约定好的数据长度不一致,若接收
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Unix网络编程卷1》是由W.Richard Stevens写的经典网络编程著作。本书主要介绍了UNIX操作系统下的网络编程相关知识,是学习UNIX网络编程的必备参考书籍。 本书分为5个部分,共22章。第一部分主要介绍了UNIX网络编程的基本概念、套接字API的使用,以及UNIX系统上的I/O模型和信号处理等基础知识。第二部分着重介绍了TCP/IP协议族及其相关概念、编程接口和套接字选项等。第三部分详细介绍了基于TCP的客户端和服务器端编程,包括服务器的并发处理和多进程/多线程编程模型。第四部分介绍了UDP套接字编程、广播和组播的相关内容。最后一部分则介绍了一些高级主题,如套接字高级选项、带外数据、网络IPC、域套接字等。 《Unix网络编程卷1》以其全面、深入、易懂的特点一直受到网络编程领域从业人员和学习者的喜爱。作者通过结合理论和实践,详细讲解了各种网络编程的技术细节和使用方法,并引用了丰富的实例和代码进行说明和演示,使读者能够更好地理解和掌握UNIX网络编程的核心概念和技能。 总之,《Unix网络编程卷1》是一本经典且权威的UNIX网络编程参考书籍,对于希望学习和掌握UNIX网络编程技术的人来说,是不可或缺的宝贵资源。无论是对于网络工程师、软件开发人员还是对于计算机科学相关专业的学生,都是一本值得推荐的优秀教材。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值