احصل على استخدام وحدة المعالجة المركزية للعملية الحالية في C

StackOverflow https://stackoverflow.com/questions/29615

سؤال

على نظام التشغيل Windows يمكنني القيام بما يلي:

HANDLE hProcess = GetCurrentProcess();

FILETIME ftCreation, ftExit, ftKernel, ftUser;

GetProcessTimes(hProcess, &ftCreation, &ftExit, &ftKernel, &ftUser);

SYSTEMTIME stKernel;
FileTimeToSystemTime(&ftKernel, &stKernel);

SYSTEMTIME stUser;
FileTimeToSystemTime(&ftUser, &stUser);

printf("Time in kernel mode = %uh %um %us %ums", stKernel.wHour,
           stKernel.wMinute, stKernel.wSecond, stKernel.wMilliseconds));
printf("Time in user mode = %uh %um %us %ums", stUser.wHour,
           stUser.wMinute, stUser.wSecond, stUser.wMilliseconds));

كيف يمكنني أن أفعل نفس الشيء على * لا شىء؟

هل كانت مفيدة؟

المحلول

يفحص com.getrusage, ، أعتقد أن هذا يجب أن يحل مشكلتك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top