国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python結束進程模塊(UNIX/WINDOWS)

2019-11-08 02:19:14
字體:
來源:轉載
供稿:網友

對于如何結束一個Python程序或者用Python操作去結束一個進程等,Python本身給出了好幾種方法,而這些方式也存在著一些區別,對相關的幾種方法看了并實踐了下,同時也記錄下。

參考:

Python 核心編程(第二版)

http://www.zhihu.com/question/21187839

 

1. sys.exit()

執行該語句會直接退出程序,這也是經常使用的方法,也不需要考慮平臺等因素的影響,一般是退出Python程序的首選方法。

該方法中包含一個參數status,默認為0,表示正常退出,也可以為1,表示異常退出。

1 import sys2 sys.exit()3 sys.exit(0)4 sys.exit(1)

該方法引發的是一個SystemExit異常(這是唯一一個不會被認為是錯誤的異常),當沒有設置捕獲這個異常將會直接退出程序執行,當然也可以捕獲這個異常進行一些其他操作。

 

2. os._exit()

效果也是直接退出,不會拋出異常,但是其使用會受到平臺的限制,但我們常用的Win32平臺和基于UNIX的平臺不會有所影響。

知乎上有說是調用了C 語言的 _exit() 函數(未考證)

 

3. os.kill()

一般用于直接Kill掉進程,但是只能在UNIX平臺上有效。

基本原理:該函數是模擬傳統的UNIX函數發信號給進程,其中包含兩個參數:一個是進程名,即所要接收信號的進程;一個是所要進行的操作。

操作(第二個參數)的常用取值為:

SIGINT      終止進程     中斷進程

SIGTERM   終止進程     軟件終止信號

SIGKILL    終止進程      殺死進程

SIGALRM   鬧鐘信號

例:

linux平臺上打開VLC視頻播放器,然后查看運行的進程:進程號是 4497

 

然后執行os.kill操作:

執行完之后可以發現VLC視頻播放器已經關閉,同時該進程也已經被Kill了。

 

4. Windows下Kill進程

既然在Linux下能夠進行上述操作,那么Windows下也能夠有相關的操作。

這里使用的是os.popen(), 該方法是用于直接執行系統命令,而在Windows下其實就是使用taskkill來kill掉進程,其基本形式是,

taskkill   /pid   程序的PID號碼

可以直接在CMD窗口下試下這個命令....

可以先打開一個計算器程序,然后使用tasklist查看該程序的pid,這里是620,所以對應的Python代碼是:

1 import os2 if __name__ == "__main__":3     pid = 6204     os.popen('taskkill.exe /pid:'+str(pid))
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 洛宁县| 逊克县| 锡林郭勒盟| 柘城县| 铜梁县| 阳信县| 三河市| 商南县| 克什克腾旗| 岳西县| 漯河市| 万州区| 岑巩县| 泸定县| 陕西省| 田东县| 桓台县| 元氏县| 新闻| 施秉县| 枞阳县| 兴国县| 和田县| 鄂伦春自治旗| 江源县| 新乡市| 增城市| 三台县| 汕头市| 鄂伦春自治旗| 奇台县| 延寿县| 临猗县| 页游| 米林县| 泌阳县| 勐海县| 青河县| 阳高县| 宿迁市| 抚顺县|