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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Katenkka
30 / 30 / 6
Регистрация: 04.04.2011
Сообщений: 86
#1

Принять в pthread_join указатель на динамический массив - C++

15.05.2014, 17:44. Просмотров 202. Ответов 0
Метки нет (Все метки)

Здравствуйте!
Имеется следующая функция:
C++
1
2
3
4
5
6
7
8
9
10
11
void *matrixConvollutionByThread(void *arg)
{   
    RGBTRIPLE *curImageArray = static_cast<RGBTRIPLE *>(arg);
 
    RGBTRIPLE *curBlurArray = new RGBTRIPLE[threadWidth*threadHeight];
 
        // преобразованный массив, получается из соответствующей функции корректно, проверяла
    curBlurArray = matrixConvolution(curImageArray, threadWidth, threadHeight, blurMatrix, 16); 
 
    return curBlurArray;
}
Которая используется для обработки изображения потоками в следующем коде:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
...
RGBTRIPLE *blurArray = new RGBTRIPLE[width*height];
 
    // создаём потоки, обрабатываем ими полученное изображение
    for(int i = 0; i < NUM_THREADS; i++) { 
        // получаем ссылка на начало обрабатываемого куска
        RGBTRIPLE *imageArrayPtr = imageArray + threadWidth*threadHeight*i;
 
        pthread_create(&threads[i], NULL, matrixConvollutionByThread, static_cast<void*>(imageArrayPtr));   
 
        RGBTRIPLE *blurArrayPtr = blurArray + threadWidth*threadHeight*i;
 
        pthread_join(threads[i], reinterpret_cast<void**>(blurArrayPtr));
    }
...
Проблема в том, что после выполнения pthread_join в *blurArrayPtr оказывается только первое значение из массива, дальше он пуст... Как заставить его принять массив из matrixConvollutionByThread целиком?

Спасибо заранее. Замучилась уже, буду рада помощи.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.05.2014, 17:44     Принять в pthread_join указатель на динамический массив
Посмотрите здесь:

Динамический массив и указатель - C++
Всем привет. Пытаюсь понять тему динамических массивов. Прошу помочь разобраться в следующем: Есть код (пример): int num = 5;...

Классы, указатель на динамический массив - C++
Здравствуйте, Подскажите пожалуйста, в чем моя ошибка, у меня есть класс Треугольник, на основании его мне нужно создать так...

Умный указатель и динамический массив - C++
Здравствуйте! Есть проблема со следующим заданием. Есть класс умного указателя, используя его необходимо, создать каталог товаров (+ 2...

Указатель на двухмерный динамический массив - C++
Друзья, нужна Ваша помощь! Создаю одномерный динамический, создаю указатель на него (вернее на его первый эл-т). То же самое пытаюсь...

Нужно сделать указатель на динамический двумерний массив - C++
Есть динамический массив, псевдо-код: #include &lt;iostream&gt; using namespace std; const int x = 10; int main() { ...

В функцию передается несколько целых чисел. Создать из всех параметров динамический массив и вернуть указатель - C++
В функцию передается несколько целых чисел. Создать из всех параметров динамический массив и вернуть указатель на него. Первым элементом...

Функция должна принять указатель на саму себя - C++
не рекурсия. (ошибка в названии) Функция должна принять указатель на саму себя. моя неверная попытка имеет вид int myfunc(int...

Динамический список, беглый указатель - C++
Здравствуйте, помогите решить следующую проблему: в задании сказано создать двусвязный динамический список и произвести с ним некоторые...

Принять 2d массив - C++
пишу программу с матрицами, пока для квадратных, в конструктор передается размер и вторым аргументом значения. значения могут лежать в int...

Принять ссылку и массив - C++
Есть массив int x = new int Как создать функцию, которая сможет получить ссылку на массив и вернуть новый массив ? Например для...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru