主线程创建一个新的线程后,怎么让该线程处理的结果又返回主线程

主线程创建一个新的线程后,如何让该线程处理的结果又返回主线程?
在主线程中定义CString   m_path= " ";
创建新线程,新线程的处理函数为
ThreadPro(VOID*   param)
{
CString*   path=(CString*)param;
CFileDialog   fd(true);
fd.DoModal();
path-> Format( "%s ",fd.GetPathName());
return   1;
}
如何让新线程取得文件路径后把路径返回到主线程的m_path?

------解决方案--------------------
我认为不出意外的话,在本线程结束后,结果就已经返回到主线程中当参数传入的那个字符串里了,只不过主线程需要等此线程执行完才能保证传得正确。可以用WaitForSingleObject进行同步,或者用Event进行同步,即当此线程执行完path-> Format( "%s ",fd.GetPathName());之后激发Event,通知主线程事件发生。