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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 31.05.2012, 14:45   #1
AndrewMT
 
Регистрация: 31.05.2012
Сообщений: 6
По умолчанию Qt, глобальные переменные и OpenMP

Уважаемые коллеги! Помогите со следующим вопросом....

Долго и упорно переписывал большой проект с Delphi на С++
(использую QT, пока с компилятором MSVC++ под 64 бита), переписал, отладил...
Пришло время распараллеливания... Решил использовать OpenMP,
чтобы сильно не "курочить" программу - в ней десятки программных модулей, сотни глобальных переменных - писали разные люди (математики), собирали код лет 15...

И вот столкнулся со следующим - при распараллеливании самого "напряжённого" участка потребовалось некоторые глобальные переменные сделать как threadprivate, они через кучу ссылок (через разные модули), в h-нике объявлены как extern. Не заработало - начались гонки данных.

Так вот - в доках нарыл, что директиву threadprivate необходимо применять в каждом юните, где используются оные глобальные перменные, и получается, что компилятор ругается, если эта директива применяется в тех юнитах, в которых подключен h-ник, в котором объявлены (extern-ном) эти глобальные переменные.

Как быть?... Может, кто сталкивался с таким?...
Сразу скажу, что GCC подобный баг был исправлен в 2005 г., а вот MSVC.... (((
AndrewMT вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Глобальные переменные tae1980 Microsoft Office Excel 16 20.11.2013 08:41
Глобальные переменные kilogram PHP 2 30.03.2012 09:19
Глобальные переменные WiseElrond C++ Builder 3 31.10.2011 20:45
Глобальные переменные Дмитрий999 Visual C++ 1 13.02.2011 22:30