`
muscle-liu
  • 浏览: 230017 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Uinx 下 Broken pipe 问题

阅读更多
前段时间在处理延时函数时遇到过 "Alarm clock" 信号问题(见我的 "Unix C 延时函数小结")。现在测试中还遇到了 "Broken pipe" 信号问题,同样产生这个信号程序就中止了。

我的程序产生这个信号的原因是:
      client端通过 pipe 发送信息到server端后,就关闭client端, 这时server端,返回信息给 client 端时就产生Broken pipe 信号了。

对于产生信号,我们可以在产生信号前利用方法 signal(int signum, sighandler_t handler) 设置信号的处理。如果没有调用此方法,系统就会调用默认处理方法:中止程序,显示提示信息(就是我们经常遇到的问题)。我们可以调用系统的处理方法,也可以自定义处理方法。

系统里边定义了三种处理方法:
1)SIG_DFL    /* Default action */
2)SIG_IGN    /* Ignore action */
3)SIG_ERR    /* Error return */

项目中我调用了 signal(SIGALRM, SIG_IGN) 和 signal(SIGPIPE, SIG_IGN), 这样产生 SIGALAM 和 SIGPIPE 信号时就不会中止程序,直接把这个信号忽略掉。

自定义处理方法:
void   signal_handle(ing   signo)   
{   
	//do   something;   
}    

int   main()   
{
	signal(SIGPIPE, signal_handle);
	......
}
0
1
分享到:
评论

相关推荐

    UINX培训教材及命令详解

    10. **more**:逐屏查看文件内容,按空格键继续,回车键查看下一行。 11. **compress/uncompress**:对文件进行压缩和解压缩,压缩后文件名后缀变为`.Z`。 12. **grep**:在文件中搜索特定字符串,`grep [options]...

    uinx入门word教程

    【Unix入门知识详解】 Unix是一种历史悠久且广泛使用的操作系统,由贝尔实验室的Ken Thompson和Dennis Ritchie于1969年开发,最初是用汇编语言编写,后于1973年用C语言重写,这使得Unix具有了高度的可移植性,能够...

    文件模拟系统 uinx

    本实验报告将深入探讨如何在Unix环境下实现一个简单的文件模拟系统,包括创建目录、改变当前目录以及列出文件目录等基本功能。 首先,我们看到一个获取当前系统时间的函数`Time`。这个函数利用`ctime`库函数从`time...

    惠普uinx文档精选

    是新手学习hp-ux的不错文档,包括了一些hp-ux的基本命令,是一本unix入门的不错文档

    UINX 环境高级编程

    本书是被誉为UNIX编程“圣经”的Advanced Programming in the UNIX Environment一书的更新版。在本书第1版出版后的十几年中,UNIX行业已经有了巨大的变化,特别是影响UNIX编程接口的有关标准变化很大。...

    Uinx命令集

    收录了97条常用的命令

    uinx网络编程

    这个文件集合,根据标题和描述,包含了"UNIX网络编程卷一第三版"的源码资料,这意味着它是一个关于如何在UNIX操作系统环境下进行网络通信编程的实践教程。主要使用的编程语言是C语言,这也是UNIX系统编程的经典选择...

    Linux/Uinx-Shell编程(简单、易学、内容全面)

    Linux/Unix Shell编程是系统管理员和开发者日常工作中不可或缺的一部分,它是一种强大的命令行脚本语言,用于自动化系统任务,管理文件,以及与操作系统进行交互。本文将深入探讨shell编程的基础和高级概念,帮助你...

    UINX命令操作

    UINX命令操作,让使用者知道怎么操作

    FOR DZ 7.2 UINX主机的伪静态文件

    FOR DZ 7.2 UINX主机的伪静态文件 方便大家使用,直接做出来了

    uinx awk.pdf

    awk.pdf

    securecrt uinx 管理工具

    **SecureCRT for Unix 管理工具详解** SecureCRT是一款强大的远程终端仿真程序,尤其适用于Unix系统的管理和维护。它提供了一种便捷的方式,使Windows用户能够通过SSH、Telnet、Rlogin等多种协议连接到Unix系统,...

    vsftp搭建 uinx基本命令

    - **服务器IP地址指定**:在独立模式下,可指定服务器IP。 - **锁定用户**:禁止用户离开其主目录,可对特定用户设定。 #### 重启服务 使用`service vsftpd restart`或`service vsftpd start`命令使配置生效。 ###...

    uinx高级编程三天上手必备

    经过3年的linux/unix开发 我觉得在开发过程中积累一些chm手册 以及 stevens的APUE,希望对大家有帮助,本压缩包包括:apue、unix-c系统函数手册;专心学习的话 三天就可以上手

    Unix编程艺术

    介绍Unix编程艺术的一篇文章,属于软件设计范畴,并不局限于Uinx领域,是很经典的一本书。

    [SUN.solaris.UINX视频教程].Solaris_SICT

    【SUN.solaris.UINX视频教程】的Solaris_SICT系列涵盖了广泛且深入的 Solaris 操作系统的知识,适合Unix系统管理员和初学者学习。这个教程旨在帮助用户快速掌握Solaris的基本操作,系统维护技巧,以及如何进行系统...

    HTK 3.4.1 linux\uinx代码的下载

    《HTK 3.4.1在Linux/Unix平台上的代码获取与初步探索》 HTK,全称为HMM Toolkit,是由剑桥大学工程系开发的一套强大的、用于声学模型建模的开源软件包。它主要用于语音识别、合成以及其他基于隐马尔可夫模型(HMM)...

Global site tag (gtag.js) - Google Analytics