Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
fipsiksi
0 / 0 / 0
Регистрация: 22.05.2014
Сообщений: 1
#1

Параллельные потоки и сегмент задачи - C++

25.05.2014, 22:53. Просмотров 176. Ответов 0
Метки нет (Все метки)

Здравствуйте. Вопрос абстрактный. Не совсем по с++, но так как пишу на с++ причём в Linux. Итак, известно что можно создать параллельный поток с помощью pthread_create(). Допустим я опишу функцию которая у меня будет в отдельном потоке в отдельном .cpp файле и я хочу, чтобы она видела некоторый массив об]явленный в файле main.cpp. Я делаю это через extern. Известно, что у потоков в одном процессе общее адресное пространство. Т.е. по идее никаких проблем с доступом не должно быть. Также хочу спросить, если я описываю мой массив перед main то память под него выделяется в сегменте данных? Т.е. когда компилятор и линковщик обработает у меня будет один исполняемый файл в сегменте данных которого будет место для памяти массива? И если так, тогда непонятно как реализуется это переключение между потоками, а по терминологии в ассемблере между задачами, если каждой задачи соответствует свой сегмент задачи, в котором сохраняется в том числе и регистр указывающий на дескриптор области данных. Т.е. и адресное пространство у них по идее разное? Тогда это не должно работать, или я чего то не понимаю?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.05.2014, 22:53
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Параллельные потоки и сегмент задачи (C++):

Параллельные потоки - C++
Может кто-нибудь подсказать, как написать программу, в которой с какой-то определенной точки работают параллельно, например, три потока?...

OPENmp параллельные потоки QT - C++
#include <iostream> #include "omp.h" using namespace std; int main() { #pragma omp parallel { ...

Параллельные потоки, вектора, переменные - C++
Если у меня работают 2-3 параллельных потока и у всех есть доступ к одному классу. 1) нужно ли лочить этот класс на время работы в...

Заменить в коде параллельные главной, на параллельные побочной диагонали - C++
Вот код,нужно сделать чтобы сортировались диагонали параллельные побочной, а не главной. помогите пожалуйста. int *diag1; diag1...

разбивка функции на параллельные потоки - C++
В наличии - последовательная функция нахождения обратной матрицы методом Гаусса-Жордана, написанная в Dev-Cpp. Задача состоит в том чтобы...

Что такое потоки ввода, потоки вывода? - C++
Здарова всем! Не так давно уже прогаю на С++ и все НИКАК не могу понять, что такое потоки ввода, потоки вывода..! вот допустим...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.05.2014, 22:53
Привет! Вот еще темы с ответами:

Не знаю что такое сегмент, не в ладах с математикой( - C++
Всем доброго времени суток, помогите пожалуйста написать программу: Определить, во сколько раз площадь круга радиуса R больше площади...

Решето Эратосфена (сегмент): медленно работает - как можно ускорить? - C++
Подсчёт числа простых чисел в диапазоне от "from" до "to" typedef UINT64 Number; __device__ Number eratosthenesSingleBlock(const...

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

Параллельные вычисления - C++
Здравствуйте, не знаю в какой ветке постить, решил в этой. Хочу использовать эти технологии OpenMP и\или GPGPU(OpenCL) но практической...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

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