fork子进程使用_exit而不是用exit函数
来源:互联网 发布:张予曦淘宝店铺不开 编辑:程序博客网 时间:2024/05/17 02:26
‘exit()’与‘_exit()’有不少区别在使用‘fork()’,特别是‘vfork()’时变得很 突出。
‘exit()’与‘_exit()’的基本区别在于前一个调用实施与调用库里用户状态结构 (user-mode constructs)有关的清除工作(clean-up),而且调用用户自定义的清除程序 (译者注:自定义清除程序由atexit函数定义,可定义多次,并以倒序执行),相对 应,后一个函数只为进程实施内核清除工作。
在由‘fork()’创建的子进程分支里,正常情况下使用‘exit()’是不正确的,这是 因为使用它会导致标准输入输出(译者注:stdio: Standard Input Output)的缓冲区被 清空两次,而且临时文件被出乎意料的删除(译者注:临时文件由tmpfile函数创建 在系统临时目录下,文件名由系统随机生成)。在C++程序中情况会更糟,因为静 态目标(static objects)的析构函数(destructors)可以被错误地执行。(还有一些特殊情 况,比如守护程序,它们的*父进程*需要调用‘_exit()’而不是子进程;适用于绝 大多数情况的基本规则是,‘exit()’在每一次进入‘main’函数后只调用一次。)
0 0
- fork子进程使用_exit而不是用exit函数
- fork子进程使用_exit而不是用exit函数
- 为何在一个fork的子进程分支中使用_exit函数而不使用exit函数?
- 进程编程—fork,getpid,exit,_exit
- 进程编程—fork,getpid,exit,_exit
- 进程编程—fork,getpid,exit,_exit
- 子进程里要用_exit(),请不要用exit()
- fork与exit、_exit的配合使用
- fork出来的子进程最好总是用_exit退出
- fork vfork exit _exit
- Linux退出进程exit/_exit和等待子进程退出wait函数分析
- Linux学习之进程fork()、exec、exit()/_exit()、wait()/waitpid
- 进程,函数退出exit和_exit
- 进程终止函数:abort, atexit, exit, _exit, _Exit
- fork vfork exit _exit区别
- 小何讲进程: 终止进程函数 exit()和_exit()
- 进程退出方法总结与exit函数&_exit函数
- exit()和_exit()函数
- git 添加文件到git仓库
- [leetcode ] Factor Combinations -------------因数组合
- c/c++ strrchr函数用法
- 欢迎使用CSDN-markdown编辑器
- fastsocket 2
- fork子进程使用_exit而不是用exit函数
- 10000小时定律
- POJ 3279 (状态压缩暴力枚举)
- CODE[VS] 1065 01字符串
- HttpServletResponse对象
- 谷歌背后的数学
- git命令
- SeekBar实现实现进度提示随thum移动,自定义View
- linux下elasticSearch 1.7.2安装教程