Russian Qt Forum
Май 02, 2024, 07:19 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Qt Properties thread safe?  (Прочитано 3392 раз)
ti0
Новичок

Offline Offline

Сообщений: 38


Просмотр профиля
« : Ноябрь 06, 2017, 21:29 »

Нигде не могу насти в документации и гугле ответ на воспрос - потоко - безопасны ли свойства meta object system? Пишу многопоточное приложение с широким использованием properties, при этом мне нужно из одного потока менять свойства объекта, который находится в другом. Нужно ли мне дополнительно об этом заботится, например с помощью мьютексов?
Записан
qate
Супер
******
Offline Offline

Сообщений: 1175


Просмотр профиля
« Ответ #1 : Ноябрь 07, 2017, 08:26 »

в документации qobject только сказано, что connect\disconnet являются thread-safe
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3258


Просмотр профиля
« Ответ #2 : Ноябрь 07, 2017, 14:13 »

Да, нужно.
Но можно схитрить и сделать через посылку своего события - сделать статический метод setProperty(QObject *object, QByteArray property, QVariant value), который будет постить эвент объекту.
И где-нибудь в QApplication перегрузить notify (или повесить глобальный фильтр), который будет ловить этот эвент и делать object->setProperty (к этому моменту эвент будет в нужном потоке)
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.046 секунд. Запросов: 22.