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

Есть два потока и глобальный массив, могут ли потоки перепутать элементы глобального массива или другого контейнера? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как средствами BC 3,1 запросить свободное место на указанном жёстком диске? http://www.cyberforum.ru/cpp-beginners/thread444851.html
Извиняюсь, если создал лишнюю тему, но ничего по своей проблемке я вроде не заметил. Если что-то есть, поправьте. А вопрос в следующем: как средствами BC 3,1 запросить свободное место на указанном жёстком диске?
C++ Указания адреса функции Есть библиотека. Нужно чтобы функция в моей библиотеке указывала на функцию в чужой. Вот мой код: typedef int (WINAPI WJMP)(); extern "C" __declspec(dllexport) WJMP Test(void); *Test= GetProcAddress(hLib, "Test"); Ошибки 1. error C2091: функция возвращает функцию http://www.cyberforum.ru/cpp-beginners/thread444782.html
C++ Как аннулироват потоки, которые заблокированы по перменной условия (pthread)?
И никак, что ли не аннулировать, получается? Вот, допустим, есть несколько потоков которые заблокированы по переменной условия: pthread_mutex_lock (&mutex); if (!(mozno_idti)) { pthread_cond_wait(&cond, &mutex); } pthread_mutex_unlock (&mutex);
Есть 4 потока. После осуществления блокировки барьером, 3 куда-то деваются, куда? (pthreads) C++
Друзья! Как мог упростил код, вот суть В цикле создаются 4 вспомогательных потока, кадый из которых в цикле же 2 раза выводит свой TID. После первого вывода TIDа каждым потоком срабатывает блокировка барьером. Ну то есть свсе потоки по разу выведут свой TID и ждут друг друга. После того, как все собрались, в вызывающий поток отправляется сигнал типа:"Мы собрались" (потоки пока не двигаются)....
C++ Внедрение мультиплеера C++ http://www.cyberforum.ru/cpp-beginners/thread443994.html
Привет дорогие форумчане. Возникла задача сделать мультиплеер для игры(исходных кодов которой я не имею) . Разбил на задачки и вот одна из них. Первая задача это перемещение игроков. вот моя идея. Нужно получить координаты одного игрока(P1) (x,y,z) передать на сервер,сервер передает всем остальным игрокам координаты P1(x,y,z). с этим я разобрался. теперь вопрос в другом ,как обработать...
C++ Графический интерфейс приложений на C? Как сделать графический интерфейс приложения под Linux написанного на C? подробнее

Показать сообщение отдельно
kravam
быдлокодер
 Аватар для kravam
1513 / 873 / 44
Регистрация: 04.06.2008
Сообщений: 5,304
13.02.2012, 12:56  [ТС]     Есть два потока и глобальный массив, могут ли потоки перепутать элементы глобального массива или другого контейнера?
Будь оно иначе, всё решалось бы средствами синхронизации, так что мультипоточность всё-таки какое-никакое применение имела бы. Но в одном вы правы- из-за такого маленького вопроса не стоило и огород городить. Пойдём дальше- если каждый поток изменяет соответствующий ему элемент массива. И сразу же: если мы имеем дело не с массивом, а, допустим, со словарём?
C++
1
2
3
4
map<char,int> first;
 
  first['a']=10;
  first['b']=30;
Допустим один поток изменяет
first['a'], а второй first['b'], могут ли они перепутать элементы?
 
Текущее время: 21:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru