как лучше организовать поток |
Здравствуйте, гость ( Вход | Регистрация )
как лучше организовать поток |
mezmay |
23.3.2010, 10:53
Сообщение
#1
|
Активный участник Группа: Участник Сообщений: 272 Регистрация: 13.7.2009 Из: Ростов-на-Дону Пользователь №: 904 Спасибо сказали: 16 раз(а) Репутация: 1 |
Сделал свой класс для отображения графиков. В конструкторе происходит открытие файла, и если файл большой, то программа висит целый час, и только потом появляется график, но вылетает ошибка RunTime error. Получается что программа во время открытия файла слишком сильно загружена и не обработывает сообщения наверное... Возникла мысль сделать открытие в другом потоке. Но как дождаться его завершения прямо в конструкторе? (т.е. без использования слота)? или это невозможно? Qt-шная функция wait() и win32 функция WaitForSingleObject() точно так же повесят программу, как и без потока. Что можно сделать?
|
|
|
Litkevich Yuriy |
23.3.2010, 12:41
Сообщение
#2
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
ufna |
23.3.2010, 23:44
Сообщение
#3
|
Активный участник Группа: Участник Сообщений: 362 Регистрация: 24.5.2008 Из: Курган/СПб Пользователь №: 182 Спасибо сказали: 29 раз(а) Репутация: 5 |
ну вообще это можно делать без слота, но и вне конструктора. А вот зачем делать реально в конструкторе - даже с потоком, т.к. суть одна - не ясно
|
|
|
mezmay |
24.3.2010, 7:53
Сообщение
#4
|
Активный участник Группа: Участник Сообщений: 272 Регистрация: 13.7.2009 Из: Ростов-на-Дону Пользователь №: 904 Спасибо сказали: 16 раз(а) Репутация: 1 |
Понял свою тупость. в конструкторе ждать и правда нет смысла. а вместо слота можно просто вызов обычной функции сделать из потока.
|
|
|
Текстовая версия | Сейчас: 30.12.2024, 19:35 |