cppReference явно в связи с вызовом std :: shared_future :: wate < /code> из нескольких потоков: < /p>
Вызовет a Wait at Action STD :: shared_future из нескольких потоков небезопасно; Предполагаемое использование для каждого потока, который ждет в одном и том же общем состоянии, чтобы получить копию std :: shared_future. < /p>
< /blockquote>
Но я не могу найти Основа для этого утверждения. В стандартной маркировке нет ничего, как какой -то особый случай. Хотя стандарт говорит, что методы на одном экземпляре shared_future < /code> не синхронизированы, вам не нужна синхронизация, так как методы только длины: < /p>
[17.6.5.9/3] a Стандартная библиотечная функция C ++ не должна прямо или косвенно изменять объекты (1.10), доступные по потокам, отличным от текущего потока, если только объекты обращаются прямо или косвенно через неконфектные аргументы функции, включая это. Есть ли у кого -нибудь авторитетный источник в этом, который объясняет, как вызов метода const на stlib может привести к условиям гонки?
Подробнее здесь: https://stackoverflow.com/questions/667 ... le-threads
Вызов `std :: shared_future :: wate` из нескольких потоков ⇐ C++
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение