Как правильно поместить объект в поток |
Здравствуйте, гость ( Вход | Регистрация )
Как правильно поместить объект в поток |
mezmay |
29.11.2012, 16:58
Сообщение
#1
|
Активный участник Группа: Участник Сообщений: 272 Регистрация: 13.7.2009 Из: Ростов-на-Дону Пользователь №: 904 Спасибо сказали: 16 раз(а) Репутация: 1 |
В несложных ситуациях помещал объект в поток так:
Если кому-то интересно в чем суть проекта, то она здесь: http://www.forum.crossplatform.ru/index.php?showtopic=9000 Здесь же задам более конкретный вопрос: допустим я создал два объекта типа CMyThread:
В каждом из них создались соответственно объекты work и начали жить в run()'е. Один из этих объектов получил данные, скажем QByteArray, который надо передать во второй объект. Как по-нормальному их передать? Или стоит как-то по-другому организовывать работу объектов в потоках? P.S. можно ли думать о передаче QByteArray через сигналы/слоты по значению, или пойти купить рыбу и у**ать себя по лицу?) Сообщение отредактировал mezmay - 30.11.2012, 20:33 |
|
|
ssoft |
30.11.2012, 8:40
Сообщение
#2
|
Участник Группа: Участник Сообщений: 130 Регистрация: 17.2.2010 Из: Москва Пользователь №: 1470 Спасибо сказали: 30 раз(а) Репутация: 3 |
Для того чтобы связать два объекта из разных потоков между собой, нужно гарантировать, что объекты созданы.
Могу предложить следующую реализацию.
Да, и QByteArray можно передавать по значению, т.к. внутри организован указатель на данные с подсчетом ссылок, т.е. данные при передаче по значению не копируются. Сообщение отредактировал ssoft - 30.11.2012, 8:43 |
|
|
Текстовая версия | Сейчас: 22.11.2024, 23:38 |