父进程通过调用CreateProcess()方法启动子进程,该方法甚至在初始化子进程之前立即返回 . 如何让父进程等待Child进程初始化并开始执行? WaitForSingleObject()调用使父进程等待,直到子线程终止或超时 .
是否有任何类似的方法使父进程等待子进程初始化?
您可以在父进程中的WinAPI中create a named event并将其设置为unsignalled状态 . 在事件句柄上调用WaitForSingleObject . 然后在子进程中,您可以按名称打开事件并在初始化子进程后发出信号(调用SetEvent()) .
如果您正在使用线程,那么让父线程等到子项完成的最简单方法之一就是使用.join()函数 . 在父进程的最终用途中
child.join();
2 回答
您可以在父进程中的WinAPI中create a named event并将其设置为unsignalled状态 . 在事件句柄上调用WaitForSingleObject . 然后在子进程中,您可以按名称打开事件并在初始化子进程后发出信号(调用SetEvent()) .
如果您正在使用线程,那么让父线程等到子项完成的最简单方法之一就是使用.join()函数 . 在父进程的最终用途中