Skocz do zawartości

Jak napisać własną wersję funkcji WaitForMultipleObjects()


Fragment

Recommended Posts

Czy istnieją jakieś funkcje niskopoziomowe, które umożliwiałyby napisanie rozszerzonej wersji funkcji WaitForMultipleObjects() ? Chodzi o to, żeby funkcja obsługiwała bardziej skomplikowane warunki wznowienia wątku. WaitForMultipleObjects() działa tak, że wznawia wątek albo gdy jeden z zadanych obiektów jądra zostanie ustawiony lub gdy wszystkie obiekty jądra zostaną ustawione. Ja chciałbym żeby funkcja wznowiła wątek gdy ustawiony zostanie jeden obiekt lub 2 inne (O1 OR (O2 AND O3)). Istnieje co prawda sposób rozwiązania tego problemu za pomocą 2-óch wątków podrzędnych, z których jeden czekałby aż pierwszy obiekt zostanie ustawiony, a drugi wątek czekałby na jednoczesne ustawienie pozostałych obiektów. Wątek główny czeka natomiast czeka na zakończenie obu wątków podrzędnych. Jednak w tym rozwiązaniu nie można stosować jako obiektu jądra mutexu. Czy ktoś zna jakiś inny sposób ?

Link do komentarza
Udostępnij na innych stronach

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gość
Odpowiedz...

×   Wkleiłeś zawartość bez formatowania.   Usuń formatowanie

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Utwórz nowe...