Форум сетевых администраторов
Показаны 10 сообщений на этой странице

Форум сетевых администраторов (http://netadmin.ws/forum/index.php)
- PHP (http://netadmin.ws/forum/forumdisplay.php?forumid=6)
-- Разделение на потоки (http://netadmin.ws/forum/showthread.php?threadid=11469)


Помещено insidex 13-02-2006 в 16:52:

Разделение на потоки

Тема баян - уже много раз поднималась, умные мужики молчАт, может здесь кто-нибудь посоветует что дельного?

Нужно из одного скрипта запустить в background другой скрипт,но не ждать в первом,пока второй скрипт выполниться,покрайне мере чтобы выглядело это так.

Простой вызов system() или exec() только лишь запускает второй скрипт, однако первый продолжает работать,пока второй не выполнит свою задачу и все тут,хоть убей(. Посоветуйте что-нибудь,нужен креатив! THANKS!


Помещено polo 13-02-2006 в 18:44:

А конкретнее можно описать ситуацию?

__________________
Всегда есть решение.


Помещено Andrej 13-02-2006 в 20:06:

Какой командой из system() скрипт запускаешь? Так

code:

/usr/local/bin/php -q  /patch/to/script > /dev/null &

или иначе?


Помещено insidex 14-02-2006 в 16:54:

Запускаю именно этой командой.

Тобишь запускаю "тяжелый" скрипт обработчик из главного,несколько раз.
Есенно додумался только до вызова команд
system("/usr/local/bin/php -q /patch/to/script-1 > /dev/null &")
system("/usr/local/bin/php -q /patch/to/script-2 > /dev/null &")
*
*
*
system("/usr/local/bin/php -q /patch/to/script-n > /dev/null &")

Моя мечта,чтобы запускать ИХ ПАÐ_АЛЛЕЛЬНО, в разхные потоки,если так угодно.На практике - они выполняются строго последовательно и все тут(


Помещено polo 15-02-2006 в 12:00:

Пришла такая идея, скрипт создает запись крон с нужными коммандами.

__________________
Всегда есть решение.


Помещено insidex 15-02-2006 в 17:35:

Идея хорошая...НО!
Крон не запустит скрипты парралельно!
Требуются еще идеи =)


Помещено polo 15-02-2006 в 21:20:

почему не заустит? Если указать для всех одно и тоже время то запутсит.

__________________
Всегда есть решение.


Помещено insidex 16-02-2006 в 17:01:

Спасибо,пошёл пробывать.


Помещено Andrej 24-06-2006 в 08:48:

Столкнулся с этой же проблемой. В ОС *nix подобная команда


code:

/usr/local/bin/php -q  /patch/to/script > /dev/null &



выполняется на ура, а вот в ВыньХÐ_ скрипт на подобной команде виснет. В мане по этому поводу написано

quote:
Замечание: Если вы собираетесь использовать эту функцию в программе, работающей в качестве демона, убедитесь, что стандартный вывод функции направлен в файл или другой поток, в противном случае PHP зависнет вплоть до конца выполнения программы.


Перенаправление вывода указано в команде, но всё равно дальше скрипт не работает, пока не отработает скрипт запущенный командой


Помещено DicsyDel 22-07-2006 в 11:15:

почитай про pcntl_fork()

Мне она очень сильно помогает при необходимости каких-либо параллельных дейсвий...

__________________
-----
http://webta.net


Формат времени GMT. Текущее время 21:19.
Показаны 10 сообщений на этой странице

Powered by: vBulletin Version 2.2.4
Copyright © Jelsoft Enterprises Limited 2000, 2001.