Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Qt и кроссплатформенное программирование С/С++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.09.2011, 11:47   #1
Lindemann66
Форумчанин
 
Регистрация: 28.02.2011
Сообщений: 127
Вопрос Вопрос касательно QThread

Всем привет!

Всего 1 маленький вопрос

Есть класс, который обеспечивает работу (не важно, какую) - допустим, Worker

Есть много потоков - QThread

Есть ли что-то плохое в том, если
создать 1 указатель *worker
и передать его во все потоки через конструктор, а затем вызывать у него операции?

То есть, по сути, 1 объект на все потоки?
Или же лучше в каждом потоке создать свой *worker, и использовать его?

Но это ведь не оптимально, так как можно в 1 месте создать, и использовать везде?

В-общем, такой вопрос

Буду благодарен за любые ответы.
Lindemann66 вне форума Ответить с цитированием
Старый 08.09.2011, 12:45   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

зависит от того что содержит класс Worker, если данные, которые будут записываться, то доступ нескольких потоков на запись одновременно может порушить данные.
а вообще не так часто это хорошая идея, исключения обьект защищенный синхронизатором.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.

Последний раз редактировалось Пепел Феникса; 08.09.2011 в 12:50.
Пепел Феникса вне форума Ответить с цитированием
Старый 08.09.2011, 12:55   #3
Lindemann66
Форумчанин
 
Регистрация: 28.02.2011
Сообщений: 127
По умолчанию

Дело то в чём...
Я сейчас понял
Всё равно файл - один (файл, с которым ведётся работа - запись и чтение)
То есть, хоть сколько делай переменных - всё равно проблема неправильной работы с данными может быть.

Вот думаю мутексы встроить
Lindemann66 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Маленький вопрос касаемо QThread max count Lindemann66 Qt и кроссплатформенное программирование С/С++ 1 05.09.2011 17:22
Нужен совет (QWidget в отдельном QThread) Lindemann66 Qt и кроссплатформенное программирование С/С++ 0 30.08.2011 11:43
Вопрос касательно программ Клиент-Сервер Eminem Помощь студентам 2 05.01.2011 11:35