2012-01-06 2 views
1

kill 함수를 kill 프로세스에 사용하고 있습니다. 그러나 반환 -1 및 perror은 "잘못된 인수"를 표시합니다. kill 설명서를 읽으면서 잘못된 신호 값이 제공되면이 오류가 발생한다고 말합니다. 이 kill(SIGKILL, pid)과 같이 또는 SIGKILL을 전달합니다.유효하지 않은 인수를 반환하는 kill 함수

왜 잘못된 인수 오류가 발생합니까? kill 함수를 호출하는 프로세스는 우리가 죽이려하는 프로세스의 자식입니다.

+1

해야한다, 단지 당신이 당신의 인수를 반전 것 같다 ... – fge

답변

5

kill은 다른 방법으로 인수를 사용합니다. man page에서 : 당신은 신호 번호와 그 반대의 장소에서 PID를 전달하는 때문에

int kill(pid_t pid, int sig); 

, 그것은 그들 중 적어도 하나는 perror로 잘못된 인수이 알려주는 것입니다 꽤 가능성이 높습니다.

+0

맹세! 내가 멍청한 실수를 저 지르지 않았다. (! – MetallicPriest

2

귀하의 kill(SIGKILL, pid);는 @ CarlNorum의 대답에서 kill(pid, SIGKILL);

man 2 kill