![]() |
Здравствуйте и добро от Соединенных Штатов UNIX и Linux Форумы! Благодарим Вас за посещение и вступления нашей мирового сообщества.
|
|
Google unix.com
|
|||||||
| Форумы | Регистрация | Правила форума | Ссылки | Альбомы | ЧАВО | Список участников | Календарь | Поиск | Сегодняшние сообщения | Отметить форумы читать |
| Программирования высокого уровня Почтовые вопросы о C, C + +, Java, SQL и других языках программирования здесь. |
Подробнее UNIX и Linux Темы форума можно найти полезные
|
||||
| Нить | Резьба для начинающих | Форум | Ответы | Последнее сообщение |
| И ад математике | ogoy | Shell программирование и сценарии | 5 | 05-26-2008 11:58 PM |
| ада и SQLite | ogoy | Shell программирование и сценарии | 2 | 05-21-2008 01:07 AM |
| об. / мин аду! | knmwt15000 | UNIX для чайников Вопросы И Ответы | 7 | 03-27-2002 06:06 AM |
| негативные UID / GID?!! Я могу видеть 'Em, но какого черта они означают?! | hellz | UNIX для чайников Вопросы И Ответы | 2 | 09-07-2001 04:18 PM |
![]() |
|
|
LinkBack | Резьба Инструменты | Искать в этом Thread | Оценить Thread | Режимы дисплея |
|
|
|
||||
|
Здравствуйте У меня серьезные проблемы с вилкой команду, я в основном хотят создать 9 или 10 дочерних процессов, и сохранять их PID номеров в массив, а дети остаются резидентами, пока я не убивают () их позже, я вроде как не могу контролировать то, как многие из них сделали как все они, как представляется, создать их собственные дети.
Мне удалось остановить разрушение моей системы, может кто-нибудь помочь, пожалуйста, ни одна из моих книг, какие-либо использования. |
|
||||
|
Это очень распространенная проблема наблюдается с вилкой.
Вы можете иметь некоторые флаг переменная, которая не позволит ребенку процесс вилка, когда родитель вилки. Очень примитивный код может быть somthing так: -- # включить <stdio.h> # включить <unistd.h> # включить <errno. H> недействительным Main () ( INT child1, child2, вальс, if_child; символ ERR [1000]; if_child \u003d 1; memset (ERR, '\ 0', strlen (ERR)); printf ( "\ nParent процесса идентификатор% D \ N", getpid ()); child1 \u003d вилка (); если (child1 \u003d\u003d -1) ( вызов (ERR, strerror (errno)); ) еще ( если (child1> 0) / * Если вилка команда успешно ребенок PID будет больше нуля. * / ( printf ( "\ nThe child1 процесса идентификатор% D \ N", child1); if_child \u003d 0; / * Установить флаг здесь, чтобы предотвратить процесс детей с forking * / ) ) memset (ERR, '\ 0', strlen (ERR)); если (if_child \u003d\u003d 0) ( child2 \u003d вилка (); если (child2 \u003d\u003d -1) ( вызов (ERR, strerror (errno)); ) printf ( "\ nThe child2 процесса идентификатор% D \ N", child2); убить (child2); ) убить (child1); выход (0); ) |
|
||||
|
Большое спасибо, выглядит многообещающим, я с нетерпением ожидаю дня, когда я могу ответить на чужой * NIX programmig вопрос. Похоже, что собираешься занять больше времени, чем с Vb.
|
|
||||
|
Я была такая же проблема с одним из моих проектов (вы можете увидеть, если резьба называется "сделать процесс дерево") и получать больше детей, чем процессы я ожидал очень неприятную проблему.
До сих пор не понял, как это работает точно, но я надеюсь, aniruddha советами поможет мне тоже. |
|
||||
|
Благодаря annibuddha (заключается в том, что, как это пишется?) Видим bb666 должность я думал, я бы эту должность ...
Я был немного неприятностей, как я добавил больше детей, но решила сохранить ID родителей в самом начале: PID \u003d getpid () позже, чем я только что проверил переменную, которую я понимаю, будут на всех детей, в отношении в отношении getpid () т.е. чтобы ребенок остановить процесс и ждать навсегда после того, как она была создана: если (PID! \u003d getpid ()) // это не родитель для (;;) Затем процессы просто сидеть там, пока они не убили (надеюсь) Последний раз редактировалось theultimatechuf; на 01-24-2002 06:13 PM.. |
|
||||
|
Да. Вот один из способов сделать это или вы могли бы просто послать сигнал остановки, чтобы ребенок процессы не будут тратить в памяти ничего. Просто замените на (;;)
с убить (getpid (), SIGSTOP). Вот и все штрафы и денди, но что, если вы хотите, чтобы ребенок процесс фактически сделать что-нибудь? Причина, если остановить его или направить его в бесконечный цикл, то вы можете не вполне работают в ребенка можно? Это фактически является частью Меня интересует: работа в детской, но предотвратить его forking после того, как родитель вилки снова. |
![]() |
| Закладки |
| Резьба Инструменты | Искать в этом Thread |
| Режимы дисплея | Оценить эту ветку |
|
|