首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

怎样确保,子线程完全退出了,父线程才退出?解决方案

2012-02-06 
怎样确保,子线程完全退出了,父线程才退出?怎样确保,子线程完全退出了,父线程才退出?[解决办法]SignalObjec

怎样确保,子线程完全退出了,父线程才退出?
怎样确保,子线程完全退出了,父线程才退出?

[解决办法]
SignalObjectAndWait, WaitForSingleObject, and WaitForSingleObjectEx
或者
WaitForMultipleObjects, WaitForMultipleObjectsEx, MsgWaitForMultipleObjects, and MsgWaitForMultipleObjectsEx
[解决办法]
父线程等待子线程? WaitForSingleObject?
[解决办法]
PROCESS_INFORMATION pi;
DWORDdwExitCode;
BOOLfSucess = ::CreateProcess( ...., &pi );//创建一个进程
if ( fSucess )
{
::CloseHandle( pi.hThread ); //结束一个进程对象 ,这里仅使计数器减1,但进程并未结束
::WaitForSingleObject( pi.hProcess, INFINITE );//接受到进程对象结束消息
::GetExitCodeProcess( pi.hProcess ,&dwExitCode );//获得子进程退出码 根据dwExitCode你可以判断进程是否已经结束
::CloseHandle( pi.hProcess );//结束子进程
}

热点排行