Russian Qt Forum
Ноябрь 23, 2024, 07:52 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Приостановка выполнения метода  (Прочитано 4453 раз)
Serr500
Гость
« : Май 31, 2012, 15:05 »

Можно ли как-то приостановить выполнение одного из методов класса, не останавливая event loop, в котором он находится?
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #1 : Май 31, 2012, 15:07 »

Можно в цикле погонять http://doc-snapshot.qt-project.org/4.8/qcoreapplication.html#processEvents
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
mutineer
Гость
« Ответ #2 : Май 31, 2012, 15:07 »

можно запустить внутри метода локальный event loop, будет подобный эффект
Записан
Serr500
Гость
« Ответ #3 : Июнь 01, 2012, 08:19 »

Спасибо.
Записан
DmitryM
Гость
« Ответ #4 : Июнь 01, 2012, 09:54 »

это похоже явная ошибка проектирования.
Записан
Serr500
Гость
« Ответ #5 : Июнь 01, 2012, 10:04 »

Это не ошибка проектирования, а теоретический интерес. Я рассматривал вариант замены механизма "сигнал-слот" и приостановка метода была одним из вариантов. В результате было принято решение использовать сигналы и слоты. Ошибки проектирования не было, поскольку вопрос возник именно в процессе проектирования.
Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #6 : Июнь 01, 2012, 12:04 »

это похоже явная ошибка проектирования.
Чего это вдруг? По-вашему все QDialog/QMenu/QMessage/../::exec() тоже ошибка проектирования?
Записан

Qt 5.11/4.8.7 (X11/Win)
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.049 секунд. Запросов: 23.