fork()
Расскажите, пожалуйста, как обращаться с сабжевой функцией, если можно с примером, схемой и областью применения... ;)
fork возвращает тризначания
-1 - ошибка
#### - в родительский поток
0 - в дочерний поток
где #### - ID созданного потока.
После выполнения функции fork в памяти появляется вторая копия твоей работающей программы. Отличие лишь в вернутом функцией значением.
Область применения - сервера, отрабатывающие одновременно несколько соединений.
Подробнее тут:
http://www.codenet.ru/progr/cpp/demons.php
Ага!.. Благодарю... Тогда еще вопрос: можно ли и как дочерние демоны, созданные по fork() заставить обмениваться данными друг с другом? Например на один демон постучались два клиента и один хочет передать что-то другому. Вообще где-нибудь можно почитать что-нибудь поподробнее, в том числе и про UNIX сокеты и многопоточность?
http://doc.novsu.ac.ru/c_unix/libc_11.html#SEC180
Вообще про GNU C:
http://doc.novsu.ac.ru/c_unix/
Про многопоточность ничего не могу сказать, не работал.
Про обмен данных посмотри сигналы. (В доке что выше)