DWORD Lock (DWORD dwTimeOut = NIESKOŃCZONE, BOOL bWaitForAll = TRUE, DWORD dwWakeMask = 0);
Wartość zwracany
Jeśli Blokada zawiedzie, to retur&nsnbsp; – 1. W przypadku powodzenia zwraca ona jedną z następujących wartości:
Jeśli bWaitForAll jest TRUE, wszystkie obiekty są syg&nalizowane (dostępne). Jeśli bWaitForAll jest Fałsz, valuenbsp zwrotu; – WAIT_OBJECT_0 jest indeks tablicy obiektów obiekt, który jest sygnalizowane (dostępne).
Zdarzenia określonego w dwWakeMask jest dostępny w wątku kolejki wejściowej.
Jeśli bWaitForAll jest TRUE, wszystkie obiekty są sygnalizowane, i co najmniej jeden z obiektów jest obiekt mutex opuszczonych. Jeśli bWaitForAll jest Fałsz, valuenbsp zwrotu; – WAIT_ABA&NDONED_0 jest indeks tablicy obiektów obiekt mutex opuszczonych, że spełnione oczekiwania.
Interwał limitu czasu określony w dwTimeOut minął bez oczekiwania uprawianych następczo.
Parametry
dwTimeOut
Określa czas oczekiwania na obiekcie synchronizacji mają być dostępne (sygnalizowane). Jeśli NIESKOŃCZONE, Zablokuj będzie czekać aż do obiektu jest sygnalizowane przed zwróceniem.
bWaitForAll
Określa, czy wszystkie obiekty oczekiwały musi stać się sygnalizowane w tym samym czasie przed zwróceniem. Jeżeli zwróci wartość FAŁSZ, Zablokuj gdy jeden z obiektów, wszelkie oczekiwały jest sygnalizowane.
dwWakeMask
Określa inne warunki, które mogą przerwać oczekiwanie. Aby uzyskać pełną listę opcji dostępne dla tego parametru, zobacz MsgWaitForMultipleObjects w Win32 Programmer's Reference.
Uwagi
Wywołanie tej funkcji uzyskanie dostępu do jednego lub większej liczby zasobów kontrolowanych przez obiekty synchronizacji, dostarczonych do konstruktora CMultiLock . Jeśli bWaitForAll jest TRUE, Zablokuj zwróci pomyślnie tak szybko, jak wszystkie obiekty synchronizacji stają się sygnalizowane jednocześnie. Jeśli bWaitForAll ma wartość FALSE, Zablokuj zwróci tak szybko, jak tylko jeden lub więcej obiektów synchronizacji staje się sygnalizowane.
Jeśli Blokada nie jest w stanie do niezwłocznego zwrotu, będzie czekać na nie więcej niż liczba milisekund określoną w parametrze dwTimeOut przed zwróceniem. Jeśli dwTimeOut jest NIESKOŃCZONY, Lock nie spowoduje zwrócenia, dopóki nie zyskał dostępu do obiektu lub nie został spełniony warunek określony w dwWakeMask . W przeciwnym wypadku jeśli Lock była w stanie pozyskać obiektu synchronizacji, to zostanie zwrócona pomyślnie; Jeśli nie, zwróci błąd.
Omówie&nie CMultiLock |nbsp; Klasa członków | Wykres hierarchii