История изменений
Исправление
dzidzitop,
(текущая версия)
:
До меня допёрло то, что пошарить мьютекс между уже живыми потоками невозможно без дополнительных накладных расходов постоянного действия. И даже с такими расходами это гемор. Сделаю свой мьютекс, а std::mutex отправлю на свалку.
Багрепорт засчитан.
О святой роли конструкторов в потокобезопасности (т.е. её отсуствии) - http://eel.is/c draft/atomics#types.operations-3 Синхронизация там нужна. Без неё thread-safety не будет. И да - внешняя синхронизация означает отсутствие у класса свойства thread-safe. Привет Вильямсу и Ко.
Исправление
dzidzitop,
:
До меня допёрло то, что пошарить мьютекс между уже живыми потоками невозможно без дополнительных накладных расходов постоянного действия. И даже с такими расходами это гемор. Сделаю свой мьютекс, а std::mutex отправлю на свалку.
Багрепорт засчитан.
О святой роли конструкторов в потокобезопасности (т.е. её отсуствии) - http://eel.is/c draft/atomics#types.operations-3 Синхронизация там нужна. Без неё thread-safety не будет.
Исходная версия
dzidzitop,
:
До меня допёрло то, что пошарить мьютекс между уже живыми потоками невозможно без дополнительных накладных расходов постоянного действия. И даже с такими расходами это гемор. Сделаю свой мьютекс, а std::mutex отправлю на свалку.
Багрепорт засчитан.
О святой роли конструкторов в потокобезопасности (т.е. её отсуствии) - http://eel.is/c draft/atomics#types.operations-3 Синхронизация там нужна. Без неё thread-safety не будет.