如何殺程序

2021-05-23 09:06:45 字數 612 閱讀 4338

要利用**殺掉指定程序,一般有兩種方法:

1)process.closemainwindow();這個方法可以優雅的關閉視窗。但該方法之對有視窗的程式有效,如果該程式沒有主視窗,或者主視窗隱藏(例如程式最小化到了windows右下角的通知欄中),則該方法無法結束程序返回false。這個方法相當於對視窗傳送關閉訊息 wm_close,可以看成和手動點視窗的關閉按鈕是等效的,那也意味著當主介面不響應時(例如,程式為單執行緒,正在執行乙個耗時的操作),該函式也會返回false。在這些情況下優雅的方法不靈了,敬酒不吃吃罰酒,暴力的方法就能派上用場了。

2)process.kill();這是個暴力的方法,強制殺掉程序。

需要注意的時,這兩種方法正確返回後,並不意味著程序已經結束了,有可能還要等1秒鐘還會結束。所以如果是想重啟程序的話,結束程序後立即重啟,重啟的程序再檢測當前程序是有可能發現同名程序的。process.waitforexit(60000)可以使得當前程序(要結束其他程序的程序)等待process物件所關聯的程序60秒鐘或者到該程序結束,這就可以用來盡量在目標程序還未結束時就啟動新的程序。

下面是一段結束程序的**:

遺憾之處是當視窗被最小化到通知欄時,將用kill殺程序,而kill無法清除通知欄。誰有完善的解決辦法?

linux如何查程序 殺程序

1.查程序 ps a 顯示現行終端機下的所有程式,包括其他使用者的程式。ps a 顯示所有程式。ps c 列出程式時,顯示每個程式真正的指令名稱,而不包含路徑,引數或常駐服務的標示。ps e 此引數的效果和指定 a 引數相同。ps e 列出程式時,顯示每個程式所使用的環境變數。ps f 用ascii...

linux如何查程序 殺程序

1.查程序 ps命令查詢與程序相關的pid號 ps a 顯示現行終端機下的所有程式,包括其他使用者的程式。ps a 顯示所有程式。ps c 列出程式時,顯示每個程式真正的指令名稱,而不包含路徑,引數或常駐服務的標示。ps e 此引數的效果和指定 a 引數相同。ps e 列出程式時,顯示每個程式所使用...

程序名殺程序

killall 程序名 pid ps gaux grep smonsvr grep v grep awk kill 9 pid 如何kill掉程序名包含某個字串的一批程序 kill 9 ps ef grep 程序名關鍵字 gawk 0 grep tr s n 觀測程序名包含某個字串的程序詳細資訊 t...