At the moment, I am using WaitForSingleObject to wait for a sub-task thread to complete. Unfortunately, this causes my GUI to lock up. What I would like to do instead, is set a handler (in the GUI thread) that will be called after the sub-task thread is complete. Is there another function for this?
At the moment, I am using WaitForSingleObject to wait for a sub-task thread to
Share
What you can do is to let the last thing that your thread does be posting a custom message to your window. Then handle that as a regular message using MFC’s message map. If you cannot change the thread code, you can create a new thread that waits for your thread and then sends the message.
As you already noticed, it is not a good idea to lock up the GUI thread…
Edit: Posting the message is done using the PostMessage function as pointed out by Hans in the comments.