Почему так происходит? и что же все-таки такое gnome-terminal?
Gnome-terminal (как же он все-таки работает?)
Модератор: Модераторы разделов
-
Dasha Kiss
- Сообщения: 2
Gnome-terminal
У меня возникла такая проблема. Писала прогу в Си под Линуксом, которая запускает приложения из командной строки и контролирует сколько в данный момент работает приложений (учитываю также и то, что я могу сама закрыть одну из запущенных прог). Писала с начала с помощью system, потом надо было написать через fork, exec. И там, и там прога плохо реагирует на команду gnome-terminal. Во втором варианте проги я делала проверку работы запущенных программ с помощью waitpid и обнаружила такую вещь: если не закрываю никаких ранее открытых приложений, то для всех команд кроме терминала waidpid возвращает 0 (т.е. процесс не завершился), а если я запускаю терминал, то waidpid возвращает pid (т.е. вроде как процесс уже завершился, хотя на самом деле это не так).
Почему так происходит? и что же все-таки такое gnome-terminal?
Почему так происходит? и что же все-таки такое gnome-terminal?
-
Liksys
- Сообщения: 2910
Re: Gnome-terminal
RETURN VALUE
...
waitpid(): on success, returns the process ID of the child whose state has changed; on error, -1 is returned; if WNOHANG was specified and no child(ren) specified by pid has yet changed state, then 0 is returned.
...
man waitpid
-
Dasha Kiss
- Сообщения: 2
Re: Gnome-terminal
Это я знаю, в waitpid у меня стоит WNOHANG - чтобы не заканчивать процесс