Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Wątek może wstrzymać i wznowić wykonywanie innego wątku. Gdy wątek jest zawieszony, nie jest zaplanowany na czas na procesorze.
Jeśli wątek jest tworzony w stanie wstrzymania (z flagą CREATE_SUSPENDED), nie zaczyna być wykonywany, dopóki inny wątek nie wywoła funkcji ResumeThread z uchwytem do zawieszonego wątku. Może to być przydatne do inicjowania stanu wątku przed rozpoczęciem jego wykonywania. Wstrzymanie wątku podczas tworzenia może być przydatne przy jednorazowej synchronizacji, ponieważ gwarantuje to, że zawieszony wątek rozpocznie wykonywanie swojego kodu, kiedy wywołasz ResumeThread.
Funkcja SuspendThread nie jest przeznaczona do synchronizacji wątków, ponieważ nie kontroluje punktu w kodzie, w którym wykonywanie wątku jest zawieszone. Ta funkcja jest przeznaczona głównie do użytku przez debugery.
Wątek może tymczasowo ustąpić miejsca swojemu wykonywaniu na określony czas poprzez wywołanie funkcji Sleep lub SleepEx. Jest to szczególnie przydatne w przypadku, gdy wątek reaguje na wejście użytkownika, ponieważ może opóźnić wykonanie wystarczająco długo, aby umożliwić użytkownikom obserwowanie wyników ich działań. Podczas interwału uśpienia wątek nie jest zaplanowany do pracy na procesorze.
Funkcja SwitchToThread jest podobna do Sleep i SleepEx, z tą różnicą, że nie można określić interwału. SwitchToThread umożliwia wątkowi rezygnację z przydzielonego kwantu czasu.