События с ключом и критические секции
Синхронизирующий объект, впервые появившийся в Windows XP и названный событием с ключом (keyed event), заслуживает особого упоминания. Он помогает процессам справляться с нехваткой памяти при использовании критических секций.
Это недокументированное событие позволяет потоку указать «ключ» в следующей ситуации-, данный поток должен пробуждаться, когда другой поток того же процесса освобождает событие с тем же ключом.Windows-процессы часто используют функции критических секций — EnterCriticalSection и LeaveCriticalSection — для синхронизации доступа потоков к личным ресурсам процесса. Вызовы этих функций эффективнее прямого обращения к объектам «мьютекс», так как в отсутствие конкуренции они не заставляют переходить в режим ядра. При наличии конкуренции EnterCriticalSection динамически создает объект «событие», и поток, которому нужно захватить критическую секцию, ждет, когда поток, владеющий этой секцией, освободит ее вызовом LeaveCriticalSection.
Если создать объект «событие» для критической секции не удалось из-за нехватки системной памяти, EnterCriticalSection использует глобальное событие с ключом — CritSecOutOjMemoryEvent (в каталоге \Ker-nel пространства имен диспетчера объектов). Если EnterCritica amp;ection вынуждена задействовать CritSecOutOjMemoryEvent вместо стандартного события, поток, ждущий критическую секцию, использует адрес этой секции как ключ. Это обеспечивает корректную работу функций критических секций даже в условиях временной нехватки памяти.
Мы не ставили себе задачу исчерпывающе описать все объекты исполнительной системы, а лишь хотели дать представление об их базовой функциональности и механизмах синхронизации. Об использовании этих объектов в Windows-программах см. справочную документацию Windows или четвертое издание книги Джеффри Рихтера «Windows для профессионалов».
Еще по теме События с ключом и критические секции:
- ПЛАНИРУЯ КАКОЕ-ТО СОБЫТИЕ, ЗАДЕРЖИТЕ В СЕБЕ ЭНЕРГИЮ, А НЕ ВЫПЛЕСКИВАЙТЕ ЕЕ В ЭМОЦИИ ИЛИ В СЛОВА. ЭНЕРГИЯ НУЖНА ДЛЯ ФОРМИРОВАНИЯ ЭТОГО СОБЫТИЯ.
- Тренировка с Ключом
- ПОДБЕРИТЕ КЛЮЧ К СЕБЕ. «ТРЕНИРОВКА С КЛЮЧОМ».
- Тест до начала первой тренировки с Ключом.
- Глава седьмая ОТКРОЙ ДВЕРЬ СВОИМ КЛЮЧОМ
- Тренировка с Ключом. (первая, общая антистрессовая часть Ключа)
- На что мы настраиваемся при тренировке с Ключом.
- На что мы настраиваемся при тренировке с Ключом.
- Критические градусы
- Тест до начала первой тренировки с Ключом.
- ПОДБЕРИТЕ КЛЮЧ К СЕБЕ. «ТРЕНИРОВКА С КЛЮЧОМ».
- Ключом приятно пользоваться.
- Ключом приятно пользоваться.
- Что вы получите в результате пяти получасовых тренировок с Ключом.
- Что вы получите в результате пяти получасовых тренировок с Ключом.
- ПСИХОЛОГИЯ КРИТИЧЕСКАЯ
- 5. Критическая теория и рабочий класс.