process.hpp
#define HPROCESS int
class Process {
private:
int exitCode;
HPROCESS hProcess;
public:
static void waitEnd(Process* proc) {
int w = waitpid(proc->hProcess, &(proc->exitCode), 0);
Debug::debug(w);
}
};
main.cpp
int main() {
Process* process = NULL;
while(!process) {
cout<<endl<<"Waiting for second process.\nPress any key";
getchar();
getchar();
process = Process::takeExisting("process");
}
Process::waitEnd(process);
cout<<endl<<"second process ended";
cout<<endl<<endl;
return 0;
}
I expected: stop main, wait for process, continue main. It isn't waiting for process, waitpid returns -1, why?