Chinaunix首页 | 论坛 | 博客
  • 博客访问: 559104
  • 博文数量: 142
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1452
  • 用 户 组: 普通用户
  • 注册时间: 2013-09-12 16:28
文章分类

全部博文(142)

文章存档

2016年(10)

2015年(60)

2014年(72)

我的朋友

分类: C/C++

2014-09-02 18:05:32

有8种方式使进程终止,其中5中为正常终止,它们是:
1.从main返回
2.调用exit
3.调用_exit或_Exit.
4.最后一个线程从其其中例程返回
5.最后一个线程调用pthread_exit

异常终止有3种:
6.调用abort
7.接收到一个信号并终止
7.最后一个线程对取消请求作出响应


3个exit函数的区别和联系:
1)_exit和_Exit立即进入内核,exit则先执行一些清理处理(包括调用执行各终止处理程序atexit,关闭所有标准I/O流等),然后进入内核。
2)三个exit函数都带一个整形参数,称之为终止状态。大多数UNIX 都检查进程终止状态。
  a)调用这些函数不带终止状态;
  b)main 执行了一个无返回值的return语句
  c)main没有声明返回类型为整形,则该进程的终止状态是未定义的。
但是如果main函数的返回类型为整形,而main函数最后一条语句是return的话,终止状态为0

在main函数中,return (0) 和exit(0)是一样的
阅读(421) | 评论(0) | 转发(0) |
0

上一篇:linux abort

下一篇:wait和waitpid

给主人留下些什么吧!~~