URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 9760
[ Назад ]

Исходное сообщение
"Qt - корректное завершение работы"

Отправлено Алексей , 17-Окт-13 10:28 
Добрый день! Подскажите, пожалуйста.
Имеется версия Qt 4.8.1, ОС - пока Ubuntu 12.04.
Написано графическое приложение, в котором через подключаемые классы запускается несколько потоков QThread. А задача стоит такая, что при закрытии главного окна программы нужно отложить её завершение до тех пор, пока не будут корректно завершены все процессы (например, если идет запись потокового видео в файл, нужно ее грамотно остановить).

Сейчас у меня реализовано так:

bool MainWindow::eventFilter(QObject *object, QEvent *event)                                          
{  
if ( event->type() == QEvent::Close)  
   {
   emit mainWindowClosing();
   return true;
   }                                                                                      
}

В общем, сигнал срабатывает, я его передаю во все потоки, но родительский процесс не дожидается их отработки и благополучно завершается. Как сделать, чтобы этому помешать?


Содержание

Сообщения в этом обсуждении
"Qt - корректное завершение работы"
Отправлено Алексей , 17-Окт-13 11:05 
Всё, решил через event->ignore();

"Qt - корректное завершение работы"
Отправлено kurokaze , 04-Ноя-13 00:48 
под макосью может быть засада