TerminateThread function synchronous?
A customer wanted to know whether the
TerminateThread function was synchronous. In other words, does the
TerminateThread function wait until the target thread has definitely terminated before returning?
TerminateThread function queues a termination to the target thread but does not wait for confirmation that the termination has occurred.
If you want to wait until the target thread has definitely terminated, wait for the thread object to become singnaled, say by calling
But please, stop calling
TerminateThread. There are no valid use cases for it. Any time you call it, you will corrupt the target process, so you may as well just terminate the entire process and be done with it.