Re[3]: Вопрос: volatile std::string s; - что бы это значило?
От: Аноним  
Дата: 24.11.05 17:19
Оценка:
Здравствуйте, Аноним, Вы писали:


A>>Чтобы функции-члены класса std::string имели атрибут volatile.


А>Боюсь, что функции-члены не могут иметь атрибут volatile просто синтаксически.

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

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



Ан нет, сорри,насчет volatile функций-членов achp прав.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.