crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Улучшение отзывчивости многопотчонной программы
RazrFalcon
  опции профиля:
сообщение 11.11.2011, 18:25
Сообщение #1


Zombie Mod
*****

Группа: Участник
Сообщений: 1654
Регистрация: 24.5.2010
Из: Харьков
Пользователь №: 1752

Спасибо сказали: 64 раз(а)




Репутация:   212  


Есть GUI который создает еще 2-а потока (всего ядер на компе 2-а).
При этом, потоки полностью самостоятельные, и посылают главному потоку только сигналы о прогрессе и когда нужно создать новое привью.
Привью создается так: создается класс-виджет и добавляется в FlowLayout. Больше главный поток ничего не делает.

Но, при работе потоков, GUI пользоваться не возможно. Он тупо не откликается на нажатия. Хотя через время все таки реагирует.

Вопрос: как увеличить отзывчивость GUI? Нужно что бы дочерние потоки совершенно не влияли на работу главного.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
DOGG
  опции профиля:
сообщение 14.11.2011, 10:41
Сообщение #2


Студент
*

Группа: Участник
Сообщений: 44
Регистрация: 9.8.2011
Из: Калининград
Пользователь №: 2798

Спасибо сказали: 6 раз(а)




Репутация:   0  


Можно попробовать при запуске потоков, которые не работают с интерфейсом, назначить им приоритет ниже среднего.

Сообщение отредактировал DOGG - 14.11.2011, 10:42
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
RazrFalcon
  опции профиля:
сообщение 14.11.2011, 15:32
Сообщение #3


Zombie Mod
*****

Группа: Участник
Сообщений: 1654
Регистрация: 24.5.2010
Из: Харьков
Пользователь №: 1752

Спасибо сказали: 64 раз(а)




Репутация:   212  


Цитата(DOGG @ 14.11.2011, 9:41) *
Можно попробовать при запуске потоков, которые не работают с интерфейсом, назначить им приоритет ниже среднего.

Это только в винде. В Linux приоритеты только от рута, вроде.

Наткнулся на хорошую статью: http://doc.qt.nokia.com/qq/qq27-responsive-guis.html
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 26.11.2024, 21:01