kill
函數是一個用于向進程發送信號的系統調用,它在 C++ 中的原型如下:
#include <sys/types.h>
#include<signal.h>
int kill(pid_t pid, int sig);
參數含義:
pid_t pid
:這是要接收信號的進程的進程 ID。你可以指定以下三種類型的進程 ID:
int sig
:這是要發送的信號編號。信號是軟件中斷,用于通知進程發生了某些事件。常見的信號有:
SIGTERM
(默認值為 15):請求終止進程。進程可以捕獲此信號并執行清理操作,然后正常終止。SIGKILL
(默認值為 9):強制終止進程。進程無法捕獲此信號,因此會立即終止。SIGINT
(默認值為 2):中斷進程。通常由用戶按下 Ctrl+C 觸發。SIGHUP
(默認值為 1):掛起進程。通常用于通知進程重新讀取配置文件。kill
函數返回值:
errno
以指示錯誤原因。例如,EPERM
表示沒有足夠的權限發送信號,ESRCH
表示指定的進程不存在。