Ответ
 
Опции вопроса Поиск в этом вопросе Опции просмотра
  #1  
Старый 01.10.2011, 03:03
Аватар для Guest
Guest
Вопрос
Сообщений: n/a
По умолчанию

Добрый деньКод:void MainCalc( CalcParam & theParam )#pragma omp parallel for // это считаем параллельноfor (i = 0; i < num; ++i) DoCalc(theParam); MonoCalc(theParam); // а это в главной нитке}void DoCalc( CalcParam & theParam ){..... // расчетыLOCK; // берем лок CalcParam temp = theParam; // делаем копию theParamSetupParam(&theParam); // изменяем theParamUNLOCK; // вынуждены снять локDoCalc(theParam); // ушли в рекурсLOCK; // берем локtheParam = temp; // восстановили theParamUNLOCK; // сняли лок }Ну наверное увидеть ошибку не составит труда
Ответить с цитированием
Ответ



Похожие вопросы
Тема Автор Раздел Ответов Последний вопрос или ответ
Параллельные соединения с БД Guest Продолжение старого архива 0 16.10.2011 15:39
Параллельные вселенные Guest Новый архив 3 0 04.09.2011 20:39
Параллельные пересекаются? Guest Третий архив вопросов и ответов 0 20.06.2011 06:08
Параллельные миры Guest Второй архив вопросов и ответов 2 30.05.2011 15:10



© www.otvetnemail.ru - Форум вопросов и ответов.