The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Предварительный выпуск проекта PXP, развивающего расширенный диалект языка PHP"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Заметили полезную информацию ? Пожалуйста добавьте в FAQ на WIKI.
. "Предварительный выпуск проекта PXP, развивающего расширенный..." +/
Сообщение от Ilya Indigo (ok), 18-Май-23, 02:20 
У меня недавно возникла проблема в том, что php многопоточность возможна только через вызов exec('... &'), после которой процесс живёт своей жизнью и не то что его судьба, его pid мне не известен!
Проблема возникла в отслеживании запущенных процессов и пробивания их при необходимости.
Решил передачей в exec уникального или определённого аргумента, по которому, в савокупности со всей командной строкой вызываю killall через exec() при необходимости (для снятия блокировки, которая долго весит).
А если нужно чтобы процесс, с такими же аргумертами не дублировался, можно в начале скрипта, который будет вызываться через exec('... &') такое прописать, и он не запустит новый процесс если старый выполняется.

#!/usr/bin/php
<?php
if(empty($_SERVER['argv'][3]))
{
    echo 'No arg1, arg2 and arg3 parameters passed!', "\n";
    exit(1);
}
elseif(exec('pgrep -cf '.escapeshellarg(implode(' ', $_SERVER['argv']))) > 1)
    exit(0);

Проблема хоть и кастыльно, через внешние вызовы, но решена.
Как с эти в пайтоне дела обстоят?
И как это в го решается и не возникнет ли там других проблем?
Го с nginx вообще можно использовать?

Если бы меня припёрло, я бы первым делом попробовал бы написать Си-расширение, но ни как не что-то на го.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Предварительный выпуск проекта PXP, развивающего расширенный диалект языка PHP, opennews, 16-Май-23, 18:36  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру