Biblioteki C/C++
CreateEvent
[funkcja] Tworzy lub otwiera nazwany lub nienazwany obiekt zdarzenia.#include <windows.h>
HANDLE WINAPI CreateEvent(
LPSECURITY_ATTRIBUTES lpEventAttributes,
BOOL bManualReset,
BOOL bInitialState,
LPCTSTR lpName
);
Argumenty
Zwracana wartość
Jeśli funkcja kończy się powodzeniem, zwraca uchwyt do utworzonego obiektu zdarzenia. Jeśli obiekt o wskazanej nazwie istniał przed wywołaniem funkcji, funkcja zwraca uchwyt do tego obiektu, a GetLastError() zwraca ERROR_ALREADY_EXISTS.
Jeśli funkcja kończy się niepowodzeniem, zwraca NULL. Aby otrzymać dodatkowe informacje o błędzie, wywołaj GetLastError();
Opis szczegółowy
Dowolny wątek procesu wywołującego może użyć uchwytu na obiekt zdarzenia w jednej z funkcji czekających.
Stan początkowy zdarzenia jest ustalany na podstawie argumentu bInitialState. By później ustawić stan zasygnalizowany, użyj SetEvent(). By zresetować zdarzenie do stanu niezasygnalizowanego, użyj ResetEvent().
Wiele procesów może mieć uchwyt do tego samego obiektu zdarzenia dla synchronizacji między procesami. Dostępne są następujące sposoby współdzielenia obiektu:
Uzyj CloseHandle() do zamknięcia uchwytu. System zamyka uchwyty po zakończeniu procesu. Obiekt zdarzenia zostaje zniszczony po zamknięciu ostatniego uchwytu.
Przykład
#include <windows.h>
int main()
{
HANDLE hEv = CreateEvent( NULL, TRUE, FALSE, NULL );
WaitForSingleObject( hEv, 1000 );
return 0;
}
Wymagania
Linki zewnętrzne
Wszystkie teksty są chronione prawami autorskimi. Kopiowanie lub rozpowszechnianie treści poza niniejszym serwisem
jest zabronione.
Powyższe ograniczenie nie dotyczy autora opracowania, któremu przysługuje prawo do rozpowszechniania własnego tekstu wedle własnego uznania.