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

Создание WinApi функции для нахождения максимального элемента массива в нескольких потоках - C++

Восстановить пароль Регистрация
 
gector378
Сообщений: n/a
14.11.2012, 21:50     Создание WinApi функции для нахождения максимального элемента массива в нескольких потоках #1
Задача состоит в следующем: ножно написать программу, которая будет находить максимальное значение массива в нескольких потоках. Я написал вот етот код но он страшно ругается на 8 потоках
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
DWORD WINAPI My(LPVOID arg)
{
        start=end;
        end=start+(size-start)/(Thread_Count-threadNow+1);
        for(int i=start;i<end;i++)
        {
              if(tMax<mas[i])
              {
                 tMax=mas[i];
              }
        }
        threadNow++;
}
и сам код кнопки вызова
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
        switch(ComboBox1->ItemIndex)
        {
        case -1:Thread_Count=1;break;
        case 0: Thread_Count=1;break;
        case 1: Thread_Count=2;break;
        case 2: Thread_Count=4;break;
        case 3: Thread_Count=8;break;
        }
        my_Handle = new HANDLE[Thread_Count];
        my_Dword = new DWORD[Thread_Count];
 
        size=CSpinEdit1->Value;
        StringGrid1->ColCount=size;
        end=0;
        param=new int[Thread_Count];
        
        mas=new int[size];
        for(int j = 0; j<Thread_Count; j++)
        {
                param[j] = j+1;
        }
        for(int i=0;i<size;i++)
        {
            mas[i]=rand()%20;
            StringGrid1->Cells[i][0]=mas[i];
        }
        tMax=mas[0];
       for(int i=0;i<Thread_Count;i++)
       {
           my_Handle[i] = CreateThread(NULL,0,My,0,NORMAL_PRIORITY_CLASS,& my_Dword[i]);
       }
       ShowMessage(IntToStr(tMax));
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.11.2012, 21:50     Создание WinApi функции для нахождения максимального элемента массива в нескольких потоках
Посмотрите здесь:

C++ Подпрограмма для нахождения максимального элемента массива
C++ программа для нахождения максимального элемента одномерного массива
Функция нахождения максимального элемента массива C++
C++ Используя прототип функции написать программу для нахождения максимального элемента
Рекурсифная функция нахождения максимального элемента массива C++
C++ В программе написать функции: вставки элемента, поиска максимального элемента, определения среднего арифметического элементов массива
C++ Функция для нахождения индекса максимального элемента массива
C++ Составить программу для нахождения номера максимального элемента массива

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
David Sylva
 Аватар для David Sylva
1281 / 943 / 51
Регистрация: 17.05.2012
Сообщений: 2,686
14.11.2012, 21:53     Создание WinApi функции для нахождения максимального элемента массива в нескольких потоках #2
Не в том разделе тему создал, есть раздел посвященный WinApi
Yandex
Объявления
14.11.2012, 21:53     Создание WinApi функции для нахождения максимального элемента массива в нескольких потоках
Ответ Создать тему
Опции темы

Текущее время: 01:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru