如何获得进程所消耗的CPU时间?

解决方案 »

  1.   

    The GetProcessTimes function retrieves timing information for the specified process.
    BOOL GetProcessTimes(
      HANDLE hProcess,
      LPFILETIME lpCreationTime,
      LPFILETIME lpExitTime,
      LPFILETIME lpKernelTime,
      LPFILETIME lpUserTime
    );
      

  2.   

    把我的代码给你。
    HANDLE handle =  GetCurrentProcess();//获得的是一个伪句柄,值为-1。
    //你可以用这个句柄来标识本进程。
    FILETIME CreationTime,ExitTime, KernelTime,UserTime;
    GetProcessTimes(handle,
    &CreationTime,
    &ExitTime,
    &KernelTime,
    &UserTime);
    SYSTEMTIME SystemTime;
    FileTimeToSystemTime(&CreationTime,&SystemTime);
    //
    //
    CloseHandle(handle);//不是必须的,可以不关闭。