processEvents() & quit() |
Здравствуйте, гость ( Вход | Регистрация )
processEvents() & quit() |
igor_bogomolov |
18.5.2009, 11:59
Сообщение
#1
|
Профессионал Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: 29 |
Привет всем.
Столкнулся с проблемкой, что-то не пойму как решить. При старте программы, в основном потоке вызывается длительная функция ~40c (она прогружает платы с ADSP). В силу некоторых причин, не хотелось бы выносить ее в дополнительный поток. Для того чтобы Gui не блокировался, периодически вызывается qApp->processEvents(). Есть QAction связанный с QCoreApplication::quit () Так вот, если в процессе выполнения exeLoader высылается quit, программа не завершается, как мне хотелось бы. Завершится только тогда, когда выйдет из exeLoader.Возможно ли это обойти, не вынося функцию в доп. поток? |
|
|
igor_bogomolov |
18.5.2009, 14:25
Сообщение
#2
|
Профессионал Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: 29 |
А вообще не понятно. Предположим юзер нажал на крестик, обработался слот closeEvent. В этом слоте выставляем флаг типа "все, Вась! Вылазим." Этот флаг проверяется в цикле forever(), из которого выходим по return или по break. Ну и все, фенита ля комедия. Так и собираюсь сделать. Только не через событие closeEvent (оно у меня и так переопределено. По нему приложение в трей сварачивается), а через свой слот.Только абзац из Бланшет теперь уж больно смущает. Да и почему такое поведение троли заложили, для безопасности чтоли? |
|
|
Текстовая версия | Сейчас: 19.12.2024, 18:02 |