URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 1119
[ Назад ]

Исходное сообщение
"Как 'клонировать' приложение?"

Отправлено kzu , 19-Ноя-02 23:35 
Есть задача: одновременно вызывать connect к разным IP и работать с ними.
Мне кажется это можно осуществить с помощью fork(), но я не знаю как.
Если не трудно напишите пример, который одновременно коннектиться к адресам, например: 127.0.0.1, 127.0.0.2, 127.0.0.3; и дальше с ними работает.
     С уважением,
     kzu.

Содержание

Сообщения в этом обсуждении
"RE: Как 'клонировать' приложение?"
Отправлено LS , 20-Ноя-02 01:14 
лучше с этим вопросом в http://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi?az=li...


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

"connect" и "fork" ничего общего между собой не имеют. будешь задавать свой вопрос в форуме, который я сказал - сразу определи, что тебе надо: либо клиент, который шлет запросы на несколько ip, либо сервер, который будет несколько ip слушать и отвечать на поступающие туда запросы (в этом случае fork тебе пригодится, но не для "слушания" ip)


>     С уважением,
>     kzu.


Взаимно, LS.


"RE: Как 'клонировать' приложение?"
Отправлено LS , 20-Ноя-02 01:24 
>лучше с этим вопросом в http://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi?az=li...

сорри - думал я в "информационная безопастность"  - так, что ты уже на месте :). но все остальное, сказанное мной "правда, только правда и ничего, кроме правды" :) (c) - от них же этот значек и пошел

по форк поищи месяца 4-5 назад. в этом обсуждении я ссылку давал на еще более давний разговор - мне его хватило не читая man свой первый демон состряпать (там в общем-то полный код простейшего демона и приведен).


"RE: Как 'клонировать' приложение?"
Отправлено LS , 20-Ноя-02 01:30 
мне его хватило не читая
>man свой первый демон состряпать (там в общем-то полный код простейшего
>демона и приведен).

или попробуй в поиске (если мне память не изменяет (плевать - я ей тоже не доверяю :)) строку "замутить демона" - эта фраза была в субж (по пам: "встала такая задача ... необходимо замутить демона...") того разговора - так что думаю найдется.


"RE: Как 'клонировать' приложение?"
Отправлено LS , 20-Ноя-02 01:39 
>мне его хватило не читая
>>man свой первый демон состряпать (там в общем-то полный код простейшего
>>демона и приведен).
>
>или попробуй в поиске (если мне память не изменяет (плевать - я
>ей тоже не доверяю :)) строку "замутить демона" - эта фраза
>была в субж (по пам: "встала такая задача ... необходимо замутить
>демона...") того разговора - так что думаю найдется.

субж безбожно переврал, но вот она ссылка http://www.opennet.me/openforum/vsluhforumID9/613.html


"RE: Как 'клонировать' приложение?"
Отправлено LS , 20-Ноя-02 01:43 
>>мне его хватило не читая
>>>man свой первый демон состряпать (там в общем-то полный код простейшего
>>>демона и приведен).
>>
>>или попробуй в поиске (если мне память не изменяет (плевать - я
>>ей тоже не доверяю :)) строку "замутить демона" - эта фраза
>>была в субж (по пам: "встала такая задача ... необходимо замутить
>>демона...") того разговора - так что думаю найдется.
>
>субж безбожно переврал, но вот она ссылка http://www.opennet.me/openforum/vsluhforumID9/613.html


на пару минут мы с ней (памятью) стали дузьями - водой не разольешь. я остался доволным, она - не знаю Ж))))


"RE: Как 'клонировать' приложение?"
Отправлено kzu , 20-Ноя-02 20:43 
Хех, да точно многое я не уточнил. Я хотел сказать, что мне нужен клиент, который берёт из файла 255 IP адресов и одновременно к ним коннектится -> ждёт пока все connect'ы вернут управление -> выписывает в файл IP, к которым удалось присоединиться. Надеюсь так будет понятнее.

"RE: Как 'клонировать' приложение?"
Отправлено Soldier , 21-Ноя-02 10:45 
>Хех, да точно многое я не уточнил. Я хотел сказать, что мне нужен клиент, который берёт из файла 255 IP адресов и одновременно к ним коннектится -> ждёт пока все connect'ы вернут управление -> выписывает в файл IP, к которым удалось присоединиться. Надеюсь так будет понятнее.

Может waitpid  подойдет? То бишь хранить где-нибудь пиды (извините за выражение) от  fork-ов, потом в цикле waitpid  с опцией   WNOHANG (пока -1 не вернет).

P.S. Можно еще и через thread, но лень объяснять...