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 表示指定的進程不存在。