Re[2]: Реальный пример использования volatile
От: What Беларусь  
Дата: 18.01.05 11:28
Оценка: 1 (1)
Здравствуйте, eao197, Вы писали:

E>Здравствуйте, What, Вы писали:


E>Но ведь здесь не используются примитивы синхронизации! С моей точки зрения, это как раз опасная практика -- изменять значение в одном потоке без блокирования чтения из другого потока.


А зачем здесь синхронизация? Один поток пишет значение переменной, другой читает. Главное, чтобы значение было записано атомарно. Это в данном случае для x86 гарантируется.
С другой стороны, а если бы рабочих потоков было, скажем, 4 вместо 1. И все читали бы одну и ту же переменную. Тогда использование синхронизации могло бы привести к ненужным потерям производительности.

E>Если бы вы использовали синхронизацию доступа к go, то volatile, наверняка, не потребовался бы.

Наверняка, да, не потребовался бы.
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.