Android 兩種退出方式簡介

KillProcess:

在android中咱們若是想要程序的進程結束能夠這樣寫:java

android.os.Process.killProcess(android.os.Process.myPid());

這樣就能夠從操做系統中結束掉當前程序的進程。android

注意:android中全部的activity都在主進程中,在Androidmanifest.xml中能夠設置成啓動不一樣進程,Service不是一個單獨的進程也不是一個線程。
當你Kill掉當前程序的進程時也就是說整個程序的全部線程都會結束,Service也會中止,整個程序徹底退出。緩存

System.exit:

當咱們在寫java程序時確定用到過System.exit(0),它的意思是退出JVM(java虛擬機),在android中同樣能夠用,咱們能夠想像一下虛擬機都退出了固然執行System.exit的程序會徹底退出,內存被釋放。spa

注意:在android手機中查看當前正在運行的進程時能夠發現還能夠查看"後臺緩存的進程",你會發現不少退出了的程序還在後臺緩存的進程中,若是不要讓程序在後臺緩存那麼就能夠用System.exit(0);來退出程序了,能夠清除後臺緩存的本進程。操作系統

System.exit(0),System.exit(1)的區別:線程

參數0和1表明退出的狀態,0表示正常退出,1表示異常退出(只要是非0的都爲異常退出),即便不傳0來執行也能夠退出,該參數只是通知操做系統該程序是不是正常退出。xml

相關文章
相關標籤/搜索