crossplatform.ru

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

Гость_Николай_*
сообщение 11.7.2010, 20:05
Сообщение #1





Гости








    


1. Можно ли использовать контейнерные классы (QMap, QValueVector, QValueList) при многопоточном программировании для обмена данными между потоками?

2. Если возможно использовать, то достаточно ли все операции с разделяемым контейнером обвернуть мьютексом? Или его ещё нужно объявлять как volitale? Или ещё что-то?

3. Если для второго потока сделать копию контейнера первого потока через QDeepCopy, позволит ли это безопасно работать с этими контейнерами в двух разных потоках?

4. Если в том же QValueList использовать объекты типа какой-то структуры, где один из элементов этой структуры является QString, то при копировании QValueList используя QDeepCopy, можно ли будет безопасно работать с этими контейнерами в двух разных потоках? Или нужно копировать по элементно и QString переписывать через QDeepCopy.

Использую Qt 3.3.3 соответственно, хотел бы получить ответы для это версии.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Litkevich Yuriy
  опции профиля:
сообщение 11.7.2010, 20:54
Сообщение #2


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

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




Репутация:   94  


Николай, если речь идёт о предыдущей мажорной версии (Qt 3), то указывайте это и в теле сообщения и в заголовке. Т.к. немного пользователей её знает и это позволит сократить ошибочные сообщения
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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


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


RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 23.7.2025, 1:12