Russian Qt Forum
Ноябрь 26, 2024, 07:02
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Многопоточное программирование, процессы
>
[solved]Многопоточка так чтобы поток знал о родительском классе
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: [solved]Многопоточка так чтобы поток знал о родительском классе (Прочитано 3793 раз)
pethead
Гость
[solved]Многопоточка так чтобы поток знал о родительском классе
«
:
Октябрь 26, 2010, 18:30 »
я взял пример chip из поставки qt. и немного его модифицировал под многопоток (уменьшил число чипов - 40000 оч. много конечно для экспериментов).
объясняю суть: в каждом QGraphicsItem chip я создал поток, и в нем меняю случайно цвет самого chip.
в поток я передаю указатель на родительский chip, чтобы поток знал у кого нужно вызвать процедуру перерисовки после изменения цвета, доступ к канве разделен мутексом.
ошибка
use of undefined type 'Chip'
на операторе
сhip->update(chip->boundingRect());
в thread.cpp
посмотрите код. что то не получается у меня решить проблему ссылки в классе на поток, так чтобы сам поток знал о родительском классе. может такие проблемы как то не так решаются? помогите.
«
Последнее редактирование: Октябрь 27, 2010, 07:41 от pethead
»
Записан
RedDog
Гость
Re: Многопоточка так чтобы поток знал о родительском классе
«
Ответ #1 :
Октябрь 26, 2010, 22:29 »
Мож подключить надо заголовочник, что бы класс потока знал о существовании некоего родителя?
ЗЫ: код не смотрел, но судя по ошибке, компил просто не видит определение класса Chip
Записан
pethead
Гость
Re: Многопоточка так чтобы поток знал о родительском классе
«
Ответ #2 :
Октябрь 27, 2010, 03:27 »
тогда получается зацикленный хидер.
класс чип должен знать о классе потока и наоборот.
я написал перед классом потока
class chip; вместо include chip.h
так компилится, но не дает вызвть методы
Записан
pethead
Гость
Re: Многопоточка так чтобы поток знал о родительском классе
«
Ответ #3 :
Октябрь 27, 2010, 07:40 »
решил. добавил "chip.h" в реализацию потока (thread.cpp).
Записан
RedDog
Гость
Re: Многопоточка так чтобы поток знал о родительском классе
«
Ответ #4 :
Октябрь 27, 2010, 08:10 »
Цитата: pethead от Октябрь 27, 2010, 03:27
тогда получается зацикленный хидер.
класс чип должен знать о классе потока и наоборот.
я написал перед классом потока
class chip; вместо include chip.h
так компилится, но не дает вызвть методы
что бы компилятор один раз включал тело заголовочника есть директива
Код:
#ifndef HEADERNAME_H
#define HEADERNAME_H
// header body
#endif
Записан
pethead
Гость
Re: [solved]Многопоточка так чтобы поток знал о родительском классе
«
Ответ #5 :
Октябрь 27, 2010, 17:06 »
Цитата: RedDog от Октябрь 27, 2010, 08:10
что бы компилятор один раз включал тело заголовочника есть директива
разумеется стоят эти директивы.
но глянь исходник. приложил же.
хотя я уже решил проблему.
Записан
Страниц: [
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 сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...