2012-01-19 182 views
0

我想用MFC来创建一个工具。这个工具的主要工作是对数据进行排序。那么,我发现当工具正在排序时,因为只有主线程;因此,在进行分拣工作时,不能移动或点击对话框。因此,我创建了另一个线程来完成排序工作,并且工作正常。MFC主线程等待另一个线程结束

但是使用线程后还有另一个问题。我不知道如何让主线程等待排序线程。我想在排序完成之后做一些事情,但是现在,主线程只是移动到下一个过程而不用等待排序线程来完成它的工作。

下面是摘录

AfxBeginThread(processfiles, tVals) // A thread do its work. 

// below I want to do something with the result I got from the thread above. 
//But main thread just do its work separately without waiting for the thread to finish its work. 

请帮忙谢谢!!

回答

2

所以编写代码来做到这一点。弹出一个对话框。指出正在进行分类。做你想做的。让其他线程在完成后向您的线程发送信号,例如通过向您发送信息PostMessage

+0

谢谢,但我不知道该怎么做....需要多一点帮助。 – user1047092

+0

您需要哪些帮助?你知道如何让线程发送一个Windows消息吗?你知道如何接收Windows消息吗? –

+0

我想知道线程如何发送消息给主线程来等待。如果你能告诉我一些代码会很棒:) – user1047092