Процессы и потоки в QT



  • Всем доброго времени суток!

    Мне нужен совет по выбору компонентов QT для решения вставшей передо мной задачи, она заключается в доработке многопоточно приложения, приложение использует для создания потоков QThread. Доработка понадобилась из за того что приложение завершает свою работу если в потоке произошла ошибка. Приложение нужно изменить так что бы при аварийном завершении потока, оно продолжало свою работу.

    Подскажите как надо инициализировать QThread что бы при ошибке в потоке не закрывалось приложение, если такое возможно? Читал про QProceess...Правильно ли я понял что с помощью него можно запускать только исполняемые файлы или же в него можно передавать, как в поток, свою функцию? Нужен совет как с помощью QT заставить выполняться свою функию в отдельном потоке? Может есть ещё какие то подходящие для этого компоненты?
    Заранее спасибо)



  • Я использую QtConcurrent::run. Весьма удобно. Из минусов - нельзя напрямую лезть в GUI, только через сигналы/слоты или через invokeMetod.
    Другой вопрос - приложение всегда завершает работу в случае ошибки, если она жесткая (обращение к нулевому указателю), или всегда можно отключить вылет приложения если он введен вручную ( exit(), abort(), qFatal() можно просто переименовать на qWarning() ), и с потоками это не связано.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.