Как изменить имя дочернего процесса после pcntl_fork?

gauss

Новичок
Как изменить имя дочернего процесса после pcntl_fork?

Есть демон на php, который переодически создает дочерние процессы и обрабатывает результаты от них.
При просмотре активных процессов (ps -aux) названия дочерних процессов такие же как и у основного.

Вопрос: как можно изменить имя процесса?
 

gauss

Новичок
ok. Уточню.

510 2572 4.6 1.3 29460 5936 ? Ss 19:11 0:00 php ems.php --start
510 2574 0.0 0.8 29460 3872 ? S 19:11 0:00 php ems.php --start
510 2575 0.0 0.8 29460 3880 ? S 19:11 0:00 php ems.php --start

Есть ли возможность из самого кода изменить строку "php ems.php --start".
 

gauss

Новичок
Это командная строка которой запустился процесс который породил вышеуказаные.

Почему спрашиваю? Потому что *nix системы позволяют это сделать. На си - это делает следующий код:
PHP:
        if (fork())
        {//parent
                sleep(10);
        }
        else
        {//child
                strcpy(argv[0],"child bla");
                sleep(9);
        }
        return 0;
.
Под линуксом работает.

Вопрос - как это сделать из php?

Пробовал:
PHP:
$argv[0] = 'php EMS fork N';
Вернуло ошибку:

PHP Warning: Cannot use a scalar value as an array in main.php on line 124
 

gauss

Новичок
Code:
Код:
                $argv[0] = 'php EMS fork N';
                var_dump($argv);
Result:
Код:
array(2) {
  [0]=>
  string(14) "php EMS fork N"
  [1]=>
  string(7) "--start"
}
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
@Artemeey, за 12 лет любой мальчик, выросший в юношу, а потом в мужчину уже нашел ответ на SF. Это с вероятностью 99%.
 
Сверху