Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.10.2009, 01:30   #1
z-s
Новичок
Джуниор
 
Регистрация: 02.10.2009
Сообщений: 2
По умолчанию при setsid() создается лишний процесс

При таком раскладе создается один процес a.out

Код:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/types.h>
#include <unistd.h>

int main(){
 if(fork() == 0){
  setsid();
  while(1){
   //system("echo test >> ~/zzz.txt");
  }
 }else{exit(0);}
}
Если снять комментарий постоянно создается дополнительный процесс, некоторое время держится а потом умирает.


~$ps aux | grep a.out
root 14097 0.0 0.0 3020 756 pts/4 S+ 01:30 0:00 grep a.out
root 14098 0.0 0.0 1504 92 ? R 01:30 0:00 ./a.out
root 32622 0.3 0.0 1504 168 ? Ss 01:16 0:02 ./a.out

~$ps aux | grep a.out
root 20081 0.0 0.0 3020 752 pts/4 S+ 01:30 0:00 grep a.out
root 20082 0.0 0.0 1504 92 ? R 01:30 0:00 ./a.out
root 32622 0.3 0.0 1504 168 ? Ss 01:16 0:02 ./a.out


Понимаю, что это связано с сохранением в файл, но не понятны детали. Объясните пожалуйста.

Последний раз редактировалось Sazary; 02.10.2009 в 19:18.
z-s вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
не создается socket() isPolin C/C++ Сетевое программирование 2 24.06.2009 14:41
Кнопка не создается Манжосов Денис :) Компоненты Delphi 10 28.04.2008 17:43
Не создается указатель на vector! mahsus Общие вопросы C/C++ 7 11.01.2008 16:07