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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.06.2016, 11:06   #1
Crystallon
Форумчанин
 
Регистрация: 05.04.2010
Сообщений: 273
По умолчанию После завершения процесса он остается в режиме ожидания - C++

Доброго времени суток!
Написал небольшую консольную програмку на C++, работает под убунтой, задача ее простая - читать данные из com порта(ttyUSB) и передавать их по http на сервер, а также по тому же http принимать от сервера команды для передачи в com порт и собственно передавать их. С задачей мое "творение" справляется без особых проблем на протяжении уже довольно длительного времени, но есть раздражающий момент который проявляется только иногда, условий при которых это происходит я не знаю, но суть в следующем - при завершении программы если смотреть через htop она остается висеть в процессах с меткой D("состояние ожидания") и нулями в колонках "используемая память", "подкачка". Т.е. вроде как программа больше не занимает оперативку и процессор на себя не отвлекает, но в тоже время она и не закрылась до конца, в следствии чего при попытке открыв ее повторно подключиться к com порту ничего из этого не выходит, на сколько я понимаю предыдущий процесс оставил его "забитым" за собой или что-то вроде того, и это не смотря на то что я использую флаг O_NONBLOCK при открытии com порта. dmesg же при этом не показывает ничего нового, никаких отключившихся устройств ttyUSB, никаких ошибок по ним итп.
Заранее спасибо за любые идеи с чем пожет быть это связано или как можно продиагностировать источник данной проблемы.
Crystallon вне форума Ответить с цитированием
Старый 02.06.2016, 11:10   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

Не завершили поток(и)
p51x вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Истекло время ожидания (Timeout). Время ожидания истекло до завершения операции или сервер не отвечает. kgs_forum C# (си шарп) 1 20.08.2013 20:14
Процесс после завершения работы с программой остается в диспетчере зедач с++ builder romec1 Помощь студентам 0 09.06.2010 14:07
Ожидание завершения процесса Человек-Ололо Общие вопросы Delphi 2 08.03.2010 19:39
Как закрыть форму индикатора процесса после завершения цикла? SkAndrew Общие вопросы Delphi 11 03.02.2010 07:39
Ждать завершения чужого процесса ERASERROR Win Api 2 04.02.2008 08:23