CMultiLock

CMultiLock nie klasy podstawowej.

Obiekt klasy CMultiLock reprezentuje mechanizmu kontroli dostępu używane w kontrolowania dostępu do zasobów w programie wielowątkowym. Umożliwia synchronizację klasy CSemaphore, CMutexi CEvent, można utworzyć CMultiLock lub CSingleLock obiekt, aby poczekać i zwolnić obiektu synchronizacji. CMultiLock należy użyć, gdy istnieje wiele obiektów, które można użyć w określonym czasie. Użyj CSingleLock , gdy konieczne jest oczekiwanie na jeden obiekt w czasie.

Aby użyć obiektu CMultiLock , należy najpierw utworzyć tablicę obiektów synchronizacji, które chcesz czekać. Dalej wywołanie konstruktora obiektu CMultiLock wewnątrz funkcji członek klasy zasobów kontrolowanych. Następnie wywołać funkcję Państwa blokady , aby określić, czy zasób jest dostępny (sygnalizowane). Jeśli jedna jest nadal z pozostałą część funkcji składowej. Jeśli zasób nie jest dostępny, należy poczekać na określony czas dla zasobu wydany lub zwraca błąd. Po zakończeniu użycie zasobu albo wywołania funkcji Unlock , jeśli obiekt CMultiLock jest do ponownego wykorzystania, albo Zezwalaj na obiekcie CMultiLock do zniszczenia.

CMultiLock obiekty są najbardziej przydatne, gdy wątek jest duża liczba obiektów CEvent , które mogą reagować. Utwórz tablicę zawierającą wszystkie wskaźniki CEvent , a wywołanie blokady. Spowoduje to, że wątek czekać aż jeden zdarzeń jest sygnalizowane.

Aby uzyskać więcej informacji na temat sposobu użycia CMultiLock obiektów, zobacz artykuł Multithreading: używania klas synchronizacji w Visual C++ Programmer's Guide.

# include lt;afxmt.h>

Czło&nkowie klasy |nbsp; Wykres hierarchii

Index