Форум программистов, компьютерный форум CyberForum.ru

OpenMP, создание потоков - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Программа работы с дробями (консоль) http://www.cyberforum.ru/cpp-beginners/thread162536.html
Десятичные дроби. Нужно чтобы программа умела: делить, умножать, складывать и вычитать и построена обязательно на классах, код не мой и разобраться в нём довольно трудно, плюс "консоль" что не мой конёк.... Вот код который у меня есть, но он не работает. Помогите кто чем может. P.S. Код был написан на MS Visual C++в отличие от привычного мне "Borland'a/CodeGear #include <iostream> #include...
C++ Самоудаление программы возможно ли, удаление самой себя проги сразу после запуска, на крайняк по окончанию работы, и как это осуществить? http://www.cyberforum.ru/cpp-beginners/thread162507.html
Разбить на классы C++
Написала программу для игры в покер, но поскольку программировать я начала недавно, то забила все в один класс. Но получилось как-то не очень красиво и читать тяжеловато. Помогите пожалуйста разбить программку на 3 класса: Pack, On_hands и Prize. #include <iostream> #include <time.h> const int NotUsed=system("color 24"); using namespace std; class Pack {
Скрыть программу C++
Вот кусок кода который скрывает активные программы: HWND Wnd; Wnd=GetForegroundWindow(); if (Wnd>0) ShowWindow(Wnd,SW_HIDE);
C++ Как это читается http://www.cyberforum.ru/cpp-beginners/thread162437.html
(*r).sled r - > sled Между ними нет разницы
C++ Не удается просмотреть значение переменной в DevCpp У меня есть компилятор Dev Cpp, проблема в том, что он не отлаживает программу.. Когда я добавляю переменную в список наблюдаемых, в списке переменных ничего не появляется. подробнее

Показать сообщение отдельно
Evg
Эксперт С++Автор FAQ
 Аватар для Evg
16824 / 5245 / 320
Регистрация: 30.03.2009
Сообщений: 14,125
Записей в блоге: 26
16.11.2014, 23:16     OpenMP, создание потоков
Цитата Сообщение от Union Посмотреть сообщение
Нужно чтобы функция void start_st каждый раз при вызове запускалась в отдельном потоке. Т.е. должно получится в данном случае 3 потока (1 - основной и 2 - функция start_st с разыми параметрами)
Подскажите как правильно написать?
Если я правильно понял постановку вопроса, то так:

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <omp.h>
#include <stdio.h>
 
int main (void)
{
#pragma omp parallel sections
  {
 
#pragma omp section
    {
      printf ("section1, thread=%d\n", omp_get_thread_num());
      start_log ("gsd", 34, "link", "proj");
    }
 
#pragma omp section
    {
      printf ("section2, thread=%d\n", omp_get_thread_num());
      start_log ("rfs", 35, "klik", "proj");
    }
  }
 
  return 0;
}
Добавлено через 1 минуту
Но при этом внутри секций надо не забывать работать с синхронизацией. Так я в примере воткнул в обе паралkельные ветки вызов printf'а, который в общем случае может и не уметь правильно работать в потоках (т.е. печати от обоих printf'ов за счёт параллельного исполнения в консоли могут перемешаться)
 
Текущее время: 07:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru