Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.08.28;
Скачать: CL | DM;

Вниз

3 потока и одна переменная   Найти похожие ветки 

 
maksim   (2011-05-15 11:44) [0]

есть 3 потока и 1 общая переменная
один поток может изменять значение этой переменной, а 2 других потока не могут менять ее значение, только читают.
Вопрос: нужна ли тут критическая секция?


 
sniknik ©   (2011-05-15 11:53) [1]

зависит от типа переменной. или от правил (ну вот взять себе за правило, что она всегда нужна при обращении из разных потоков...)


 
maksim   (2011-05-15 12:06) [2]

тип интеже, назовем N

вот в одном потоке допустим при каком-то условии увеличиваем N в 2 раза

в двух других потоках используем эту переменную как входную для какой-то функции f(N), то есть этими двумя потоками переменная N не может меняться


 
Юрий Зотов ©   (2011-05-15 13:38) [3]


> maksim   (15.05.11 12:06) [2]

Зависит от задачи. Если читающим потокам все равно, какое значение N они получат, то синхронизация не нужна. А если читающий поток всегда должен получать строго новое значение N (то есть, строго ПОСЛЕ того, как его установит пишущий поток), то синхронизация нужна.


 
maksim   (2011-05-15 14:59) [4]

ага, вроде понятно, спасибо за ответы


 
sniknik ©   (2011-05-15 15:00) [5]

> какое значение N они получат
либо старое, либо новое,
смена значения у интеждера же атомарная, т.е. он его не побайтно меняет, с  возможностью прервать операцию на обработку потоком. нет?

> А если читающий поток всегда должен получать строго новое значение N
ну, в этом случае, если строго новое, я бы тоже без синхронизации обошелся...  просто бы посылал потоку новое значение при его смене.



Страницы: 1 вся ветка

Текущий архив: 2011.08.28;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.01 c
2-1305523776
ruslan_as
2011-05-16 09:29
2011.08.28
Dev Express cxGrid - как включить итоги


15-1305056428
И. Павел
2011-05-10 23:40
2011.08.28
Как получить список запущенных приложений из сервиса


15-1304220544
PiterPen
2011-05-01 07:29
2011.08.28
Delphi x64


15-1304866052
Novik
2011-05-08 18:47
2011.08.28
С Днем Победы!


4-1249917325
A.Melnyk
2009-08-10 19:15
2011.08.28
Как измененить иконки файлов?