首页 > 编程知识 正文

accept函数的返回值(linux 中断 添加处理函数,Linux函数accept中断处理)

时间:2023-05-04 00:13:43 阅读:123646 作者:2601

1背景编程

在Linux套接字编程(类似于《Linux socket编程案例》 )中,服务器使用accept )阻塞模式等待客户端链路,并在等待期间使用Ctrl C中断程序(生成SIGINT信号) 中断后,想进行内存释放等清理操作后退出程序,所以使用signal函数捕获了SIGINT信号:服务

signal(sigint,App_exit );

说明: App_exit ()是一个自定义函数,用于结束函数清理操作并执行:

staticvoidapp_exit(intsigno ) )。

{

.

if(socket_FD!=-1 ()

关闭(socket _ FD;

socket_fd=-1;

}

.

}

accept ) )函数用于socket_fd,因为它被阻止了。 因此,关闭socket_fd后发生错误: socket

bad文件描述符

分段故障(酷睿双核)。

2解决方法

在App_exit ()中执行清理操作后,将退出程序,并且不会返回到中断的位置。 在App_exit ()的末尾添加_exit ) )函数即可。 函数

_exit(0;

参考资料. net

[1]关于accept被信号中断的问题线程

[2]如何在c上停止接受博客

[3]套接字进程处理中断的系统调用和Accept函数返回到EINTR错误处理进程

[4]中断被socket.accept阻止的线程ip

[5]中断阻塞方式accept调用的方法

-----------------

作者: OneSea-V3.0

来源: CSDN

译文: 3359 blog.csdn.net/q 1302182594/article/details/46647413

本文是博客的原创文章。 转载请附上博文连接。 存储器

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。