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

C++

Войти
Регистрация
Восстановить пароль
 
Chainik228
0 / 0 / 1
Регистрация: 18.10.2015
Сообщений: 46
Завершенные тесты: 1
#1

Чтение переменной несколькими std::thread - C++

04.06.2017, 10:07. Просмотров 443. Ответов 3
Метки нет (Все метки)

Собственно, вопрос в заголовке темы.

Можно ли прочитать одну переменную несколькими потоками одновременно? Именно прочесть, а не изменить.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.06.2017, 10:07
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Чтение переменной несколькими std::thread (C++):

Pimpl + std::thread + linux sockets? - C++
Доброго времени суток. Есть задача постоянно слушать сокеты, ну и что-то с этим всем делать, класс назван Transport. Т.к. типы сокетов...

Ошибка "неопределенная ссылка" при работе с std::thread - C++
При попытке сделать что-либо с std::thread, выдает ошибку компиляции, "неопределенная ссылка " . К примеру: #include...

Применение std::move к локальной переменной при возврате из функции - C++
Response HostHandler::notFound() const { Response resp; resp.status = 404; return std::move(resp); } Имеет ли это...

std::string, std::fstream, ошибка кучи - C++
где то начало вылетать при операции += с локальной переменной std::string. Заменил на свой qString. Замечательно, то же самое... ошибка при...

как проинициализировать std::stack<const int> obj ( std::stack<int>{} ); - C++
добрый день. вопрос в коде: http://rextester.com/VCVVML6656 #include &lt;iostream&gt; #include &lt;stack&gt; //-std=c++14...

std::filesystem && std::asio и пр - C++
Пытался найти хоть какие-то сроки включения всего этого в стандарт (так же ожидается lexical_cast, any, string_algo и т.д.) и вообщем везде...

3
MrGluck
Модератор
Эксперт CЭксперт С++
7418 / 4533 / 671
Регистрация: 29.11.2010
Сообщений: 12,281
04.06.2017, 11:27 #2
Конечно. Если переменная не меняется, то можно использовать её в разных потоках без блокировок.
1
Chainik228
0 / 0 / 1
Регистрация: 18.10.2015
Сообщений: 46
Завершенные тесты: 1
04.06.2017, 13:19  [ТС] #3
И никаких побочных эффектов?
0
MrGluck
Модератор
Эксперт CЭксперт С++
7418 / 4533 / 671
Регистрация: 29.11.2010
Сообщений: 12,281
04.06.2017, 15:11 #4
Нет.
Если потоки не обновляют ячейку памяти, то доступ к данным для чтения не нуждается ни в защите, ни в синхронизации.
1
04.06.2017, 15:11
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.06.2017, 15:11
Привет! Вот еще темы с ответами:

THREAD.H (многопоточность) - C++
нужно срочно разобраться в этой теме, но компилятор не находит THREAD.H #include &lt;thread&gt; #include &lt;iostream&gt; void...

Использование std::function в std::thread - C++
Нужно вызвать function fnc в новом потоке. Как сделать? function &lt;void(vector&lt;char&gt;)&gt; fnc; void test(vector&lt;char&gt; data) { for...

Ошибка компиляции "no instance of constructor 'std::thread::thread' matches the argument list" - C++
Не могу сообразить почему возникает ошибка. У меня в классе есть метод, который должен работать в нескольких потоках одновременно. Вот он: ...

Boost::thread vs std::thread - C++
Доброго времени суток, решил углубить свои знания, и решил почитать про потоки, бустовые и те что в 11 стандарте приняли, с бустом все ясно...


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

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

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