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

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

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

Глобальная переменная не читается в новом потоке - C++

16.12.2012, 19:50. Просмотров 392. Ответов 2
Метки нет (Все метки)

подскажите пожалуйста, у меня есть помимо главного еще 2 потока и есть глобально объявленный массив, заполняю я его в первом потоке, там же создаю второй поток, но во втором потоке этот элемент массива пустой, почему так может происходить? P.S. первый поток после создания второго продолжает выполнятся, это к вопросу об уничтожении всего порожденного этим потоком по завершению
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.12.2012, 19:50
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Глобальная переменная не читается в новом потоке (C++):

Глобальная переменная определена в хидере. Компилятор ругается на то, что переменная переопределена несколько раз - C++
Исходники: /* main.cpp */ #include "hider.h" int main(void) { return 0; } /* foo.cpp */

Глобальная переменная - C++
#include "stdafx.h" #include "locale" #include "iostream" #include "conio.h" using namespace::std; int count = -1; void swap();...

Глобальная переменная - C++
Есть двумерный символьный массив ClusterBuf объявленный глобально. В него,в ходе выполнения программы, будет считываться содержимое...

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

Глобальная переменная - C++
Надо сделать глобальную переменную которая будет видна во всех файлах .cpp Непонятно где ее нужно инициализировать и присваивать...

Глобальная переменная в OpenCL - C++
Всем привет! Кто может подсказать как правильно создать глобальную переменную в OpenCL? unsigned char *globalVariable; __kernel...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Avazart
Эксперт С++
7145 / 5322 / 275
Регистрация: 10.12.2010
Сообщений: 23,557
Записей в блоге: 17
17.12.2012, 05:28 #2
Синхронизировать нужно доступ к массиву. Читай про синхронизацию потоков, потокобезопасность
1ropb
4 / 4 / 0
Регистрация: 23.09.2012
Сообщений: 74
17.12.2012, 17:43  [ТС] #3
Спасибо, там как раз ошибка была в том, что в одном варианте участок памяти перезаписывался нулем, а в другом индекс обнулялся до использования в потоке, теперь буду лучше следить за этим)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.12.2012, 17:43
Привет! Вот еще темы с ответами:

Глобальная переменная из другой dll - C++
Имеется сторонняя dll без исходников. Мне нужно в своей программе получить значение глобальной переменной из той длл. Через IDA нашел,...

Динамический массив как глобальная переменная - C++
Доброго времени суток, даже с google никак не смогу разобраться со следующей задачей: Хочу объявить матрицу(matrix допустим) глобальной...

Не определяется глобальная переменная внутри функции - C++
Доброго времени суток! Передо мной стоит задача: Задано множество точек М в трехмерном пространстве. Найти такую из них, что шар...

Глобальная переменная(не пойму как точно сделать) - C++
Привет.. Делаю менюшку... Ну как в .... Блокноте "Файл, Правка, Справка". Меню выпадающее, тоесть нажимаем на файл - там открыть,...


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

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

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