Название: QThread - помогите новичку Отправлено: Demonn от Ноябрь 22, 2005, 10:45 Добрый день! Только начинаю работать с QT, объясните, в чем ошибка:создается класс myThread : public QThread
описываем run() Код:
В приложении создаю объект myThread * thread и вызываю run(). Все виснет, пока не закончится цикл while (i++ < 10000) Что делаю не так? Название: QThread - помогите новичку Отправлено: Admin от Ноябрь 22, 2005, 11:10 Надо позволять приложению обрабатывать события
вызывать типа qApp->processMessage(); почаще Название: QThread - помогите новичку Отправлено: Demonn от Ноябрь 22, 2005, 11:35 > Admin
а как это сделать в qt? Название: QThread - помогите новичку Отправлено: zlatko от Ноябрь 22, 2005, 12:16 ты должен запускать поток посредством вызова метода start()
Название: QThread - помогите новичку Отправлено: Sergeich от Ноябрь 22, 2005, 12:48 Цитата: "Admin" Надо позволять приложению обрабатывать события вызывать типа qApp->processMessage(); почаще :shock: Есть вариант еще круче: Определяем свое событие, скажем MyEvent, наследуемся от QApplication и переопределяем метод customEvent(), если приходит событие типа MyEvent, вызываем processEvents(). На каждой итерации потока делаем QApplication::postEvent( new MyEvent ). :wink: Название: Re: QThread - помогите новичку Отправлено: Sergeich от Ноябрь 22, 2005, 12:51 Цитата: "Demonn" В приложении создаю объект myThread * thread и вызываю run(). Все виснет, пока не закончится цикл while (i++ < 10000) Что делаю не так? Поток создается методом QThread::start(), если просто вызвать run(), он отработает в той же нитке. Название: QThread - помогите новичку Отправлено: Demonn от Ноябрь 22, 2005, 14:59 > Sergeich
СПАСИБО! |