![]() |
Модераторы: ginnie, korob2001 |
![]() ![]() ![]() |
|
TDrive |
|
|||
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 6.9.2009 Репутация: нет Всего: нет |
есть скрипт который в начале работы создаёт например 20 процессов.
потом каждому процессу даёт задачу и ждёт. когда какой нибудь процесс выполняет задачу он сообщает родительскому процессу что всё зделал. родительский процесс даёт ему новую задачу. выглядит это примерно вот так:
в таком виде он работает НО syswread() если не может прочитать из дескриптора тормозится пока в дескрипторе не появятся данные. тоесть скрипт работает потому что все процессы нормально работаю но если один процесс повиснет то главный процесс будет ждать от него ответа. значит надо массив дескрипторов @ParentRead сделать неблокирующим. знаю что надо use Fcntl; знаю что делает это fcntl() но вот с параметрами этой функции не могу разобраться. ну первый параметр это дескриптор а другие 2 параметра вообще тёмный лес.... и описания нигде найти не могу. может кто помочь разобраться? (ещё можно вроде через метод blocking() но я стараюсь не использовать модули чтоб самому разобраться как чё работает) кстате почему больше 64 процессов открыть нельзя? Это сообщение отредактировал(а) TDrive - 8.9.2009, 15:44 |
|||
|
||||
TDrive |
|
|||
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 6.9.2009 Репутация: нет Всего: нет |
![]() ![]() ![]() |
|||
|
||||
ginnie |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1287 Регистрация: 6.1.2008 Где: Москва Репутация: 6 Всего: 49 |
TDrive, может Вам поможет Doing Non-Blocking I/O?
-------------------- Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг) |
|||
|
||||
TDrive |
|
|||
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 6.9.2009 Репутация: нет Всего: нет |
||||
|
||||
![]() ![]() ![]() |
Правила форума "Perl: Системное программирование" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Perl: Системное программирование | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |