Из программы надо запустить другую. В связи с этим есть два вопроса. Вопросы про linux. 1. Корректно ли делать fork+exec из одного из thread-ов? 2. Скажем есть такая программа: class C1 { public: C1() { printf("подписаться на события\n"); } ~C1() { printf("отписаться от событий\n"); } int get_message() { return 0; }; }; C1 c1; int main(void) { pid_t pid = -1; pid = fork(); if(0 == pid) { execl("/wrong_path", "/wrong_path"); exit(1); } // while(0 == c1.get_message()) // { // printf("do something\n"); // } return 0; } Тут еще надо добавить обработчик SIGCHILD, чтоб зомби не оставались. Если exec по какой-то причине не выполнится, то произойдет следущее: [vasya@vasya 0]$ ./a.out подписаться на события отписаться от событий отписаться от событий Вместо exit пишу _Exit, то деструкторы не вызываются и всё происходит так как мне надо. [vasya@vasya 0]$ ./a.out подписаться на события отписаться от событий Корректно ли здесь использовать _Exit? Насколько я понимаю, вся выделенная память должна автоматически освобождаться при завершении процесса?
Ответ на:
комментарий
от vasirck
Ответ на:
комментарий
от cvv
Ответ на:
комментарий
от cvv
Ответ на:
комментарий
от vasirck
Ответ на:
комментарий
от cvv
Ответ на:
комментарий
от Die-Hard
Ответ на:
комментарий
от anonymous
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум fork(), exec(), wait() (2020)
- Форум fork() (2020)
- Форум [fork()+getpid()] Мааа...ленький вопросик (2008)
- Форум [c][perl?] exec (2008)
- Форум Чтение выхлопа процесса без ожидания его завершения (2019)
- Форум Перехват Crtl+C (2001)
- Форум Реализация конвейра (2019)
- Форум Взаимодействие system в php и fork+exec конструкции в исполняемой программе. (2013)
- Форум fork + popen. Залипание на wait при SIGCHLD (2019)
- Форум Семафоры (2005)