`

函数exit与_exit的区别

 
阅读更多

 

 

/****************************************
*文件名:exit_differ.c
*描述:比较函数exit(int status)与函数_exit(int status)的区别
*    #include <stdlib.h>
*    void exit(int status)
*    void _exit(int status)
*    区别:exit函数在调用之前要检查文件的打开情况,
*          把文件缓冲区的内容写会文件;而_exit直接使进程
*          停止运行,清除其使用的内存空间,并销毁起在内核
*          中的各种数据结构   
********************************************/

#include <sys/types.h>
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>

#define OK 0

int main( void )
{
    pid_t pid;
    pid = fork();

    if ( -1 == pid )
    {
        printf("failed to create a new process!\n");
        exit(0);
    }else if ( 0 == pid )
    {
        printf("child process,output begin!\n");
        printf("child process,content in buffer!");
        exit(0);
    }else
    {
        printf("\nparent process,output begin\n");
        printf("parent process, content in buffer");
        _exit(0);
    }
   
    return OK;
}

 

child process,output begin!
child process,content in buffer!
parent process,output begin
 

 

 

 

分享到:
评论

相关推荐

    exit (2)_EXIT_exit过程_

    在MATLAB中,`quit`函数与`exit`功能相似,但有一些细微差别。`quit`不接受任何参数,而且在MATLAB R2016b及以后的版本中,`quit`已被标记为废弃,推荐使用`exit`代替。 四、`onCleanup`与`exit` 为了确保在程序...

    C语言exit和return函数的区别

    C语言exit和return函数的区别 C语言中,exit和return函数都是结束当前进程的方式,但是它们之间有很大的区别。 Exit函数: Exit函数是一种终止当前进程的方式,exit函数的原型为`void exit(int status);`,其中...

    EXIT_TURBO.rar_EXIT turbo_turbo_turbo 迭代_turbo码exit_turbo迭代

    这个“EXIT_TURBO.rar”压缩包包含了一系列与Turbo码 EXIT 图迭代相关的程序和数据文件,适合于深入理解和研究Turbo码的工作原理。 在Turbo码中,有两个基本的组件:交织器和并行或串行的涡轮编码器。交织器的作用...

    nonbinary_EXIT_NonBinary_EXIT_NonBinaryLDPC_LDPCEXIT_EXIT_非二进制ld

    非二进制EXIT图通常由两个非二进制互信息函数曲线表示,分别对应编码器和译码器的输入输出信息。这两个曲线的交点代表了系统的潜在迭代解码性能。 非二进制LDPC码的构造通常基于图论,其中包含稀疏的校验矩阵。这些...

    KEY_EXIT.rar_FACLORY EXIT KEY_stm 按键

    这些文件可能包括了STM32的初始化代码、中断服务函数定义以及与按键相关的逻辑。通过阅读和理解这些代码,我们可以学习到STM32的GPIO中断配置、中断服务函数的编写技巧,以及如何将这些组件整合到实际应用中。 总的...

    SAP函数大全.doc

    SAP函数大全 SAP函数大全是一个ABAP开发必备的参考手册,提供了大量的函数用于解决常见的问题。本文档中总共收录了近50个函数,涵盖了从日期处理、字符串操作到文件上传下载等多个方面。 1. 日期处理函数 DATE_GET...

    module的__init__exit

    在 Linux 内核中,__init__ 和 __exit__ 是两个特殊的宏,用于告诉内核在静态编译时对这些函数进行特殊处理。当内核编译成模块时,这两个宏起着关键的作用。 __init__ 宏 __init__ 宏用于标记某些函数或初始化数据...

    浅析结束程序函数exit, _exit,atexit的区别

    本文将详细解析三个常见的结束程序函数:`exit`, `_exit`, 和 `atexit`,以及它们之间的区别。 首先,`atexit()` 函数用于在程序正常退出时注册一个无参数无返回值的函数,以便在程序终止前执行特定的清理工作。在C...

    EXIT_EXITChart_EXIT_源码.rar

    从这个标题来看,我们推测这可能是关于一个名为"EXIT"的项目,可能涉及到图表(Chart)的创建或处理,并且与退出(EXIT)操作有关。然而,由于提供的标签为空,我们无法获取更多关于该源码具体领域的信息。 在描述...

    Stm32Exit_stm32_EXIT_

    在STM32中,EXIT通常不作为特定的硬件功能或API函数,而是与中断服务例程(ISR)的退出有关。当我们谈论"EXIT的基本操作"时,这可能包括以下方面: 1. **中断服务例程的结构**:中断服务例程通常包含中断初始化、中断...

    C++ 中exit(),_exit(),return,abort()函数的区别

    exit()函数与_exit()函数及return关键字的区别:  exit()和_exit()函数都可以用于结束进程,不过_exit()调用之后会立即进入内核,而exit()函数会先执行一些清理之后才会进入内核,比如调用各种终止处理程序,关闭...

    SAP 常用函数大全

    CS_BOM_EXPL_KND_V1 函数用于展开与特性相关的特定款号的物料清单。该函数可以将物料清单展开到多层级别,并将组件物料存储在内表中。 STATUS_TEXT_EDIT 函数 STATUS_TEXT_EDIT 函数用于获取生产定单状态。该函数...

    exit_dancefcf_stm32外部中断初始化_

    5. **`exit.c`和`exit.h`文件**:在项目中,`exit.c`通常是实现外部中断服务函数和相关功能的源代码文件,而`exit.h`则包含了相关的函数声明和可能的全局变量定义,供其他模块调用。 6. **`exit.zip`文件**:这是一...

    详解python中 os._exit() 和 sys.exit(), exit(0)和exit(1) 的用法和区别

    详解python中 os._exit() 和 sys.exit(), exit(0)和exit(1) 的用法和区别 os._exit() 和 sys.exit() os._exit() vs sys.exit() 概述 Python的程序有两中退出方式:os._exit(), sys.exit()。本文介绍这两种方式的...

    创建新进程:fork函数:fork函数干什么? fork函数与vfork函数的区别在哪里?为何在一个fork的子进程分支中使用_exit函数而不使用exit函数?

    fork 函数与 vfork 函数的区别在于:vfork 函数创建的子进程会在父进程的地址空间中执行,而不是在自己的地址空间中执行。这意味着,vfork 函数创建的子进程不能修改父进程的地址空间。 在使用 fork 函数时,为什么...

    imx6ull_exit_int

    imx6ull_exit_int

    EXIT_EXITChart_EXIT.zip

    《退出图表分析与实现》 在信息技术领域,源码是软件开发的核心,它代表了程序设计者的思想和逻辑。"EXIT_EXITChart_EXIT.zip" 文件很可能包含了一套用于处理图表退出行为的源代码,这可能是一个专门针对图表界面...

    Conv.codes.exit_matlab_

    在MATLAB环境中,"Conv.codes.exit_matlab_"这个标题很可能是指一个关于卷积编码(Convolutional Coding)的退出图表(EXIT Chart)实现。退出图表是评估错误检测和纠正能力的一种强大工具,尤其在信道编码领域。接...

Global site tag (gtag.js) - Google Analytics