进程3

来源:互联网 发布:数据蒙特卡洛 编辑:程序博客网 时间:2024/06/06 03:59

_exit和exit的一个区别

_exit(0)直接退出,不刷新缓存区.系统调用

exit(0)先刷新缓存区后在退出.库函数

int main()
{
 cout<<"in main,pid="<<getpid();      //<<endl;endl也是刷新缓存区

// fflush(stdout);
 _exit(0);
}

上述代码加上注释则什么都不输出,去掉注释打印进程ID


atexit  注册在函数结束时调用的函数,输出顺序和注册顺序相反.

void exitHandler(void)
{
 printf("If exit with exit,function1 be called\n");
}
void exitHandler2(void)
{
 printf("if exit with exit,function2 be called\n");
}
int main()
{
 cout<<"In main,pid="<<getpid()<<endl;
 atexit(exitHandler);
 atexit(exitHandler2);
 exit(0);
}





0 0
原创粉丝点击