Lines Matching refs:PI
174 static bool Execute(ProcessInfo &PI, StringRef Program,
309 PI.Pid = pi.dwProcessId;
310 PI.Process = pi.hProcess;
411 ProcessInfo sys::Wait(const ProcessInfo &PI,
416 assert(PI.Pid && "invalid pid to wait on, process not started?");
417 assert((PI.Process && PI.Process != INVALID_HANDLE_VALUE) &&
421 ProcessInfo WaitResult = PI;
424 DWORD WaitStatus = WaitForSingleObject(PI.Process, milliSecondsToWait);
427 if (!TerminateProcess(PI.Process, 1)) {
433 CloseHandle(PI.Process);
436 WaitForSingleObject(PI.Process, INFINITE);
437 CloseHandle(PI.Process);
448 if (GetProcessTimes(PI.Process, &CreationTime, &ExitTime, &KernelTime,
450 GetProcessMemoryInfo(PI.Process, &MemInfo, sizeof(MemInfo))) {
462 BOOL rc = GetExitCodeProcess(PI.Process, &status);
465 CloseHandle(PI.Process);