C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  01.05.2010 — Update World C++: Сборник GPL QT исходников
  15.12.2007 — Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Хостинг:
Windows 2003, ASP.NET 2.0
бесплатный и от 80 руб./мес


   Отправить письмо
Кулабухов Артем, Беларусь




 336 - События синхронизации (Event) в MFC / MFC шаг за шагом / Visual C++

Шаг 336 - События синхронизации (Event) в MFC

Для подробного ознакомления лучше прочитать MFC: "Шаг 332 - MFC и синхронизация", MSDN: "Шаг 83 - Что такое События (Event) синхронизации", WinAPI: "Шаг 119 - Функции CreateEvent(), SetEvent(), ResetEvent()".

В MFC для работы с Event есть соответствующий класс CEvent. Конструктор этого класса такой:

CEvent
( 
	BOOL bInitiallyOwn = FALSE,		// разрешения использовать CMultilock или CSingleLock
	BOOL bManualReset = FALSE,		// ручное или автомат
	LPCTSTR lpszName = NULL,		// имя сообщения
	LPSECURITY_ATTRIBUTES lpsaAttribute = NULL	// атрибут безопасности
);

Методы работы аналогичны функциям API:

SetEvent  
PulseEvent 
ResetEvent 

Объявить его можно и без аргументов. Вот так.

CEvent ce;

Установить в сигнальное состояние:

ce.SetEvent();

Следить за ним можно с помощью функции WaitForSingleObject():

::WaitForSingleObject(ce.m_hObject,INFINITE);

С INFINITE мы не встречались. Эта константа говорит, что не надо возвращать управление пока мы не дождемся сигнала.

Объявлен этот класс в заголовочном файле:

#include "afxmt.h"

| |
Автор Каев Артем.
[AD]