
1. SwooleProcess::exec를 사용하여 자식 프로세스를 실행하는 방법은 다음과 같습니다.
- SwooleProcess::exec($command, $input, $output, $return_var);
- $command: 실행할 명령어
- $input: 입력 스트림
- $output: 출력 스트림
- $return_var: 반환 코드
예를 들어, 자식 프로세스를 실행하는 코드는 다음과 같습니다.
#hostingforum.kr
php
$process = new SwooleProcess(function ($worker) {
echo "자식 프로세스 시작n";
$worker->exec('ls', null, null, $return_var);
echo "자식 프로세스 종료n";
}, true);
$process->start();
2. 자식 프로세스가 종료되면 부모 프로세스가 종료되지 않습니다.
- SwooleProcess::exec는 비동기 방식으로 자식 프로세스를 실행하므로, 부모 프로세스는 자식 프로세스의 종료 여부와 관계없이 계속 실행됩니다.
3. 만약 자식 프로세스가 종료되면, 부모 프로세스는 자식 프로세스의 반환 코드를 통해 종료 여부를 확인할 수 있습니다.
- 반환 코드가 0이면 자식 프로세스가 정상적으로 종료되었습니다.
- 반환 코드가 0이 아닌 경우 자식 프로세스가 비정상적으로 종료되었습니다.
#hostingforum.kr
php
$process = new SwooleProcess(function ($worker) {
echo "자식 프로세스 시작n";
$worker->exec('ls', null, null, $return_var);
echo "자식 프로세스 종료n";
}, true);
$process->start();
$process->wait(true);
echo "부모 프로세스 종료n";
위 코드는 자식 프로세스가 종료되면 부모 프로세스가 종료됩니다.
2025-08-12 22:26