在使用Python進(jìn)行進(jìn)程操作時(shí),有時(shí)候需要手動(dòng)殺掉某些進(jìn)程以確保程序正常運(yùn)行或者釋放資源。下面是介紹Python進(jìn)程如何殺的方法。
# 引入所需模塊 import os import signal # 獲取進(jìn)程ID pid = os.getpid() # 殺掉自己 os.kill(pid, signal.SIGKILL)
上述方法使用了os模塊獲取當(dāng)前進(jìn)程的PID,然后使用signal模塊發(fā)送kill信號(hào)給進(jìn)程。SIGKILL信號(hào)可以強(qiáng)制殺掉一個(gè)進(jìn)程。
如果想殺掉其他進(jìn)程,可以使用psutil模塊獲取進(jìn)程列表并終止對(duì)應(yīng)的進(jìn)程。下面是一個(gè)例子。
# 引入所需模塊 import psutil # 獲取進(jìn)程列表 processes = psutil.process_iter() # 遍歷進(jìn)程列表,找到包含某個(gè)關(guān)鍵字的進(jìn)程 for process in processes: if "keyword" in process.name(): process.terminate()
上述例子使用了psutil模塊獲取進(jìn)程列表,然后遍歷進(jìn)程列表并找到包含"keyword"的進(jìn)程,然后使用terminate()方法進(jìn)行終止。
需要注意的是,終止進(jìn)程時(shí)需要確保自己具有足夠的權(quán)限才能終止其他進(jìn)程。