Russian Qt Forum
Декабря 14, 2025, 07:47
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Многопоточное программирование, процессы
>
В потоках допустимы?
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: В потоках допустимы? (Прочитано 4869 раз)
Примерный ученик
Бывалый
Offline
Сообщений: 450
И это не всегда помогает
В потоках допустимы?
«
:
Июля 23, 2010, 12:58 »
QT 3.3.8
Допустимо ли использование в потоках
QDate cD=QDate::currentDate();
QTime cT=QTime::currentTime();
поскольку
Цитировать
Класс QTimer, и классы для работы с сетью QFtp, QHttp, QSocket и QSocketNotifier, целиком зависят от цикла обработки событий, поэтому они не могут использоваться за пределами главного потока.
Записан
Как мало времени и как много нужно узнать
SABROG
Гость
Re: В потоках допустимы?
«
Ответ #1 :
Июля 23, 2010, 17:13 »
QTimer - QObject
QFtp - QObject
QHttp - QObject
QSocket - QObject
QSocketNotifier - QObject
QDate - не QObject
QTime - не QObject
Классы не наследующие QObject в цикле событий не нуждаются, но это не значит, что классы на базе QObject'а нельзя использовать в разных потоках, если есть такое ограничение, то оно есть только для Qt3, в случае с Qt более свежей версий этих ограничений нет при соблюдении некоторых условий.
Записан
Примерный ученик
Бывалый
Offline
Сообщений: 450
И это не всегда помогает
Re: В потоках допустимы?
«
Ответ #2 :
Июля 23, 2010, 17:31 »
спасибо
Записан
Как мало времени и как много нужно узнать
serg_hd
Хакер
Offline
Сообщений: 668
Re: В потоках допустимы?
«
Ответ #3 :
Июля 23, 2010, 20:57 »
да и запустить обработчик событий во второстепенном потоке тоже никто не запрещает(exec()). Создавал и запускал когда-то QTimer(хотя и не рекомендуется) в нём, было дело.
«
Последнее редактирование: Июля 24, 2010, 00:13 от serg_hd
»
Записан
kubuntu/Win7/x64/NetBeans
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...