BOOL GetProcessTimes(
HANDLE hProcess, // handle to process
LPFILETIME lpCreationTime, // process creation time
LPFILETIME lpExitTime, // process exit time
LPFILETIME lpKernelTime, // process kernel-mode time
LPFILETIME lpUserTime // process user-mode time
);
Замер времени выполнения чужой программы
Стоит задача измерить, сколько времени данный процесс загружал процессор на 50 и более процентов. То есть по сути, замерить время выполнения этой программы.
Конкретно имею: MathCAD, считающий разностную схему в течение 1.5-3 минут. Пытаюсь это время оптимизировать. Чтобы этого добиться, надо точно знать что тормозит вычисления, а что позволяет их ускорить. Задача мне кажется довольно типовая, я думаю, решение пригодилось бы не только мне, но и многим другим, да и просто представляет интерес.
Пишу здесь, так как опыта программирования с помощью WinAPI функций у меня практически нет. Поэтому большая просьба предложения сопровождать кодом.
Заранее спасибо!
определена в "Windows.h"
Код:
Если не ошибаюсь проблема получения Наndle процесса недавно обсуждалась на форуме
Цитата:
Originally posted by khasya
Задача такова. Есть некий процесс, который монопольно в течение нескольких минут грузит процессор процентов на 90-99.
Стоит задача измерить, сколько времени данный процесс загружал процессор на 50 и более процентов. То есть по сути, замерить время выполнения этой программы.
Конкретно имею: MathCAD, считающий разностную схему в течение 1.5-3 минут. Пытаюсь это время оптимизировать. Чтобы этого добиться, надо точно знать что тормозит вычисления, а что позволяет их ускорить. Задача мне кажется довольно типовая, я думаю, решение пригодилось бы не только мне, но и многим другим, да и просто представляет интерес.
Пишу здесь, так как опыта программирования с помощью WinAPI функций у меня практически нет. Поэтому большая просьба предложения сопровождать кодом.
Заранее спасибо!
Задача такова. Есть некий процесс, который монопольно в течение нескольких минут грузит процессор процентов на 90-99.
Стоит задача измерить, сколько времени данный процесс загружал процессор на 50 и более процентов. То есть по сути, замерить время выполнения этой программы.
Конкретно имею: MathCAD, считающий разностную схему в течение 1.5-3 минут. Пытаюсь это время оптимизировать. Чтобы этого добиться, надо точно знать что тормозит вычисления, а что позволяет их ускорить. Задача мне кажется довольно типовая, я думаю, решение пригодилось бы не только мне, но и многим другим, да и просто представляет интерес.
Пишу здесь, так как опыта программирования с помощью WinAPI функций у меня практически нет. Поэтому большая просьба предложения сопровождать кодом.
Заранее спасибо!
надо в первую очередь проанализировать алгоритмы