Re[2]: Вопрос: volatile std::string s; - что бы это значило?
От: Аноним  
Дата: 24.11.05 17:14
Оценка: -1
A>Чтобы функции-члены класса std::string имели атрибут volatile.

Боюсь, что функции-члены не могут иметь атрибут volatile просто синтаксически.
Использование volatile ограничивает возможности компилятора по оптимизации, т.к. volatile-объекты могут быть изменены в произвольный момент времени другим потоком (или обработчиком аппаратного прерывания ) Применение volatile к объектам, не являющимися простыми типами (т.е. не int, например) вероятно может повлиять только на оптимизацию inline-методов, т.к. все члены такого объекта также volatile.

Уж не знаю, что имел в виду мудрый препод, но для работы с volatile std::string нужна критическая секция в том или ином виде, иначе при параллельном обращении к string ее внутреннее состояние с большой вероятностью будет разрушено
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.