Im в настоящее время экспериментирует с небольшим приложением ncurses.C/C++ ncurses freeze
Что это такое должно быть do получает сообщение через последовательный порт, это сообщение разделено на: а затем оно должно показывать разные значения в отдельных окнах. Ive использовал strtok, чтобы «разбить» его.
У меня все работает, кроме обновления текстового окна, оно обновляет одно окно правильно, и как только я обновляю следующее окно, оно замерзает. Теперь, ive попробовал много разных вещей с этим, и ему пришлось вернуться к очень грубому пути, просто чтобы просто это сделать. Пожалуйста, смотрите этот код:
while(1){
read (fd, in,20);
s = strtok(in,":");
while (s != NULL)
{
mvwprintw(winrpm,1,1,s);
s = strtok(NULL, ":");
mvwprintw(wintrans,1,1,s);
}
refresh();
wrefresh(winrpm);
wrefresh(wintrans);
//refresh();
}
Everyting работает как ожидается, если я удалить второй mvwprintw, но с этим один в, она замерзает после первого обновления.
Любые идеи? Я знаю, что я должен включить весь мой код, но его 98% ncurses чертежи окон и цвета и прочее.
Это бесконечный цикл. Нет никакого ожидания или чего-то еще. Вот почему он висит. – Leandros
Да, я знаю его бесконечную петлю. Это очень грубо, но почему он только висит с еще одним окном для обновления? – 540
О! Благодаря! Я просто добавил, если NULL перерыв, и теперь он работает. Тогда вам нужно найти лучший цикл для него. Не ожидал, что ncurses замораживают инсайты null, но это было небрежно со мной. Большое спасибо – 540