Wie pausiere ich einen Thread und continue ihn später wieder?
-
hier ich hab hier ne APIanwendung und in der möchte ich mit einen button einen Thread pausieren und wieder continuen... wie mach ich das?
Gruss Tobi
An ALLE ~ Frohes Neues ~
-
CreateEvent, WaitForSingleObject, SetEvent, CloseHandle
-
vieleicht gehts noch etwas exakter?
-
Nimm CreateEvent und setze den zugehörigen Handle mit SetEvent auf 'signaled' (in Deinem Hauptthread). Im Thread überprüfst Du dann in etwa so:
if(WaitForSingleObject(hEvent, INFINITE) == WAIT_OBJECT_0) // Und weiter gehts...Wenn Du dann mit ResetEvent den Event-Handle zurücksetzt, wird Dein Thread fortfahren, da die Funktion WaitForSingleObject den Thread solange blockiert, bis das 'Event' hEvent wieder zurückgesetzt ist, also 'un-signaled' ist.
Das Allg. Thema dazu lautet Thread-Synchronisation, siehe hier:
Synchronization Functions (MSDN)
Synchronization
CreateEvent