IPB
ЛогинПароль:

> Правила раздела!

1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!

 
 Ответить  Открыть новую тему 
> TMultiReadExclusiveWriteSynchronizer
сообщение
Сообщение #1





Группа: Пользователи
Сообщений: 1
Пол: Мужской

Репутация: -  0  +


Ребят, как правильно использовать этот класс (TMultiReadExclusiveWriteSynchronizer)? Может пример бросите сюда, что к чему.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


code warrior
****

Группа: Пользователи
Сообщений: 484
Пол: Мужской
Реальное имя: Славен

Репутация: -  8  +


Цитата(NEDD @ 6.06.2007 6:40) *
Ребят, как правильно использовать этот класс (TMultiReadExclusiveWriteSynchronizer)? Может пример бросите сюда, что к чему.
Класс (как видно из названия) используется для синхронизации доступа по записи. Например, в случае, когда у нас есть некий защищаемый ресурс, из которого можно массово читать (переменная состояния например), но запись должна быть исключительной.
Т.е. для доступа по чтению мы говорим BeginRead() и начинаем читать, после завершения говорим EndRead(). Для записи - BeginWrite() и по завершении операции EndWrite(). Если некий поток (или много потоков) в момент попытки записи другим потоком (BeginWrite) находится в состоянии чтения (выполнил BeginRead но не дошёл до EndRead), то поток, открывающий запись будет блокирован до тех пор, пока все читающие потоки не скажут EndRead.
Операция BeginRead может блокировать поток, только в случае, если в этот момент происходит запись (открыт BeginWrite).


--------------------
ИзВ ин ИтЕ зА нЕ рОв НЫй П оч ЕРк
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 5.12.2020 16:36
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name