進程退出exit、_exit、abort


分為正常退出,異常退出

正常退出的方法:

1、在main函數中執行return

2、調用exit函數

3、調用_exit  函數

 

------------------------------------------------------------------

異常退出的方法:

1、調用abort函數

2、進程收到某個信號,而該信號使進程終止

------------------------------------------------------------------

不管是哪種退出方式,最終都會執行內核中的同一段代碼。這段代碼用來關閉進程所有已打開的文件描述符。

釋放它所占用的內存和其他資源。

各種退出方式的比較:

1、exit和return的比較,exit是一個函數,有參數。而return是函數執行完畢后的返回。exit把控制權交給系統,而return將控制權交給調用函數。

2、exit和abort的區別,exit是正常終止進程,而abort是異常終止。

3、exit中的參數 如果為0代表進程正常終止,如果為其他值表示程序執行過程中有錯誤發生,比如除數為0

4、exit和_exit的區別,exit在頭文件stdlib中聲明,而_exit聲明在頭文件unistd.h中,兩個函數均能正常終止進程。但是

-exit函數執行后會立即返回給內核。而exit函數要先執行一些清除操作,然后將控制權交給內核。

----------------------------------------------------------------------

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM