crossplatform.ru

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

> Как правильно поместить объект в поток
mezmay
  опции профиля:
сообщение 29.11.2012, 16:58
Сообщение #1


Активный участник
***

Группа: Участник
Сообщений: 272
Регистрация: 13.7.2009
Из: Ростов-на-Дону
Пользователь №: 904

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




Репутация:   1  


В несложных ситуациях помещал объект в поток так:

class CWork //класс рабочего объекта
...

class CMyThread : public QThread
...

void CMyThread::run()
{
    CWork work;

    connect(m_pGUIThread, SIGNAL(someSignal()),
        &work, SLOT(someSlot()));
    ...
    // и т.д. и т.п.

   exec();
}

Если кому-то интересно в чем суть проекта, то она здесь: http://www.forum.crossplatform.ru/index.php?showtopic=9000

Здесь же задам более конкретный вопрос: допустим я создал два объекта типа CMyThread:
CMyThread thread_A;
thread_A.start();
CMyThread thread_B;
thread_B.start();

В каждом из них создались соответственно объекты work и начали жить в run()'е.
Один из этих объектов получил данные, скажем QByteArray, который надо передать во второй объект. Как по-нормальному их передать? Или стоит как-то по-другому организовывать работу объектов в потоках?

P.S. можно ли думать о передаче QByteArray через сигналы/слоты по значению, или пойти купить рыбу и у**ать себя по лицу?)

Сообщение отредактировал mezmay - 30.11.2012, 20:33
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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


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




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