
SwooleProcess::signal 함수는 프로세스에 신호를 보내는 데 사용됩니다. 신호 종류는 다음과 같습니다.
- SIGHUP (1): 프로세스에 연결된 터미널이 닫힌 경우
- SIGINT (2): 프로세스에 인터럽트 신호가 발생한 경우
- SIGQUIT (3): 프로세스에 종료 신호가 발생한 경우
- SIGILL (4): 프로세스가 잘못된 명령을 수행한 경우
- SIGTRAP (5): 프로세스가 트랩을 발생시킨 경우
- SIGABRT (6): 프로세스가 자발적으로 종료한 경우
- SIGBUS (7): 프로세스가 버스 에러를 발생시킨 경우
- SIGFPE (8): 프로세스가 산술 오류를 발생시킨 경우
- SIGKILL (9): 프로세스를 강제로 종료하는 경우
- SIGUSR1 (10): 사용자 정의 신호 1
- SIGUSR2 (12): 사용자 정의 신호 2
- SIGCHLD (17): 자식 프로세스가 종료한 경우
- SIGCONT (18): 프로세스가 중지된 경우
- SIGSTOP (19): 프로세스를 중지하는 경우
- SIGTSTP (20): 프로세스가 중지된 경우
- SIGTTIN (21): 프로세스가 입력을 기다리는 경우
- SIGTTOU (22): 프로세스가 출력을 기다리는 경우
- SIGURG (23): 프로세스가 우편을 받은 경우
- SIGXCPU (24): 프로세스가 CPU 시간을 초과한 경우
- SIGXFSZ (25): 프로세스가 파일 크기를 초과한 경우
- SIGVTALRM (26): 프로세스가 가상 타이머를 발생시킨 경우
- SIGPROF (27): 프로세스가 프로파일러를 발생시킨 경우
- SIGWINCH (28): 프로세스가 윈도우 크기를 변경한 경우
- SIGIO (29): 프로세스가 입출력이 가능한 경우
- SIGPWR (30): 프로세스가 전원이 켜진 경우
- SIGSYS (31): 프로세스가 시스템 호출을 수행한 경우
- SIGRTMIN (34): 사용자 정의 신호 (시스템에 따라 다름)
- SIGRTMAX (64): 사용자 정의 신호 (시스템에 따라 다름)
SwooleProcess::signal 함수를 사용하여 프로세스에 신호를 보내는 예제 코드는 다음과 같습니다.
#hostingforum.kr
php
use SwooleProcess;
$pid = Process::create(function () {
echo "자식 프로세스입니다.n";
}, true);
Process::signal($pid, SIGKILL);
이 코드는 자식 프로세스를 생성하고 SIGKILL 신호를 보내어 자식 프로세스를 강제로 종료합니다.
2025-05-31 02:27