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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 19, средняя оценка - 4.79
Avazart
7044 / 5221 / 259
Регистрация: 10.12.2010
Сообщений: 22,947
Записей в блоге: 17
#1

Нужно ли синхронизировать доступ к переменной из двух потоков? - C++

15.05.2012, 20:48. Просмотров 2429. Ответов 21
Метки нет (Все метки)

Допустим есть два потока: основной и вторичный.

1. И допустим есть глобальная переменная bool b;

Вопрос: является ли b разделяемым ресурсом? И нужно ли синхронизировать доступ к ней?
Например вариант когда b сигнализирует основному потоку о том что вторичный поток закончен...

2. Есть глобально объявленный std::vector. Вторичный поток переодически добовляет туда элементы.
Основной поток в это время выводит элементы на экран начиная с начала вектора ( вывод занимет определенное время так что вторичный поток обычно опережает работу основного).

Вопрос: Может ли возникнуть в таком случае проблемы? Например связанные с перераспределением памяти в векторе?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.05.2012, 20:48     Нужно ли синхронизировать доступ к переменной из двух потоков?
Посмотрите здесь:

Доступ к статической переменной-члену C++
Доступ к переменной по абсолютному адресу. C++
C++ Реализовать доступ к закрытой переменной
доступ к структурной переменной C++
Получить доступ к переменной класса при наличии такого же имени переменной в функции C++
C++ Доступ к переменной только из двух функций. Возможно ли это?
C++ Доступ к переменной из другого модуля
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
Модератор
Эксперт С++
7958 / 4720 / 319
Регистрация: 24.06.2010
Сообщений: 10,525
Завершенные тесты: 3
19.08.2012, 01:50     Нужно ли синхронизировать доступ к переменной из двух потоков? #21
Avazart, http://www.boost.org/doc/libs/1_50_0...anisms.mutexes дело в том, что в бусте все несколько разнесено. То есть либа которая работает с потоками - работает с потоками, которая с процессами - с процессами. В API очевидно все свалено в одну кучу.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.08.2012, 01:54     Нужно ли синхронизировать доступ к переменной из двух потоков?
Еще ссылки по теме:

Самый простой способ реализации двух параллельных потоков C++
C++ Параллельная работа двух потоков
Как много потоков нужно в программе под windows? C++
Обращение к переменной из разных потоков C++
Доступ к переменной родительского класса C++

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

Или воспользуйтесь поиском по форуму:
Avazart
7044 / 5221 / 259
Регистрация: 10.12.2010
Сообщений: 22,947
Записей в блоге: 17
19.08.2012, 01:54  [ТС]     Нужно ли синхронизировать доступ к переменной из двух потоков? #22
В API очевидно все свалено в одну кучу.
Ну это сложно назвать кучей... даже кучкой не назовешь...
Yandex
Объявления
19.08.2012, 01:54     Нужно ли синхронизировать доступ к переменной из двух потоков?
Ответ Создать тему
Опции темы

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