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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как нарисовать полигон http://www.cyberforum.ru/cpp-beginners/thread1177060.html
Помогите пожалуйста найти методички и материал для построения.
C++ С++вывести двоичный вид инвертированного числа Здравствуйте! Помогите вывести "Инвертированный х" в двоичном виде именно с помощью функции printd, которая у меня описана. Задача то правильно написана, "Исходный х" тоже в двоичной выводит, а вот инвертированный не знаю как ...Подскажите! Если что, вот задание: напишите программу invert(p,x,n), возвращающую значение х с инвертированными n-битами, начиная с позиции p ( остальные биты не... http://www.cyberforum.ru/cpp-beginners/thread1177049.html
C++ Вывод на экран графического изображения
Помогите спроектировать программу на с++ для вывода на экран графического изображения.
Как сделать массив, чтобы все данные вводились с клавиатуры? C++
добавить переменные (поля класса главной формы) и обработчики событий, необходимые для ввода числа элементов массива комплексных чисел, ввода действительной и мнимой частей очередного комплексного числа (элемента массива), вычисления результата (Сумма элементов с положительной действительной частью).
C++ Шаблоны (параметризованные типы) http://www.cyberforum.ru/cpp-beginners/thread1177018.html
ребзя, помогите..не могу с прогой вобще разобраться..проде код маленький..помогите очень нужно:( вот что нужно. "Опишите параметризованный класс очередь элементов (параметр – тип)." Добавлено через 17 минут и можно с обьяснением строк..если можно
C++ Исключить из массива все повторяющиеся элементы Дан массив. Допустим я ввожу элементы 1,2,3,2,4 И нужно создать новый массив чтобы одинаковых элементов в нем не было, то есть чтобы мне вывел 1,2,3,4 Как это сделать? Желательно без векторов и т.п, т.к студент начального курса, хотелось бы разобраться на более простом примере. Добавлено через 19 часов 27 минут актуально. подробнее

Показать сообщение отдельно
Katenkka
30 / 30 / 6
Регистрация: 04.04.2011
Сообщений: 86

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

15.05.2014, 17:44. Просмотров 199. Ответов 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 целиком?

Спасибо заранее. Замучилась уже, буду рада помощи.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru