Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Нужен анализатор вызовов функций в Delphi


Автор: Delphist 11.8.2008, 15:36
Скажите, пожалуйста, если какая-нить фича, такого плана:
возьмем для порстоты такой проект:
Код

unit Unit1;
...

function CalcTime: integer;
begin

  //расчетный код
end;

procedure TForm1.SameFunc(a: integer);
begin

  //какой-нить код
  CalcTime;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin

  SameFunc(1);
end;

procedure TForm1.SetupForm;
begin

  InitControl;
end;

procedure TForm1.PrepareToShow;;
begin

  //что-нить делаем
end;

procedure TForm1.FormCreate(Sender: TObject);
begin

  SetupForm;
  PrepareToShow;
end;
end.


смысл такой, чтобы это фишка могла проанализировать (скажем к примеру построить дерево) последоватеьность вызовов функций (процедур) моего класса (в данном случае TForm) и оценить время работы каждой процедуры,
т.е. при загрузке формы происходит следующий вызов:

FormCreate
|
|__SetupFrom (0.241 сек)
|``|
|``|__InitControl(0.14 сек)
|
|__PrepareToShow(0.1 сек)

при нажатии Button1, происходит след. вызывов:
Button1Click (0.052 сек)
|
|__SameFunc (0.0519 сек)
|``|
|``|__CalcTime(0.0519 сек) 

Автор: aleksh 11.8.2008, 15:52
извеняюсь, а зачем? какая разница 0,0015 или 0,0017?
если для проверки в работоспособности, так можно в коде добавить свою замерку, да будет притормаживать, но не на много

Автор: Delphist 11.8.2008, 15:57
Цитата(aleksh @  11.8.2008,  16:52 Найти цитируемый пост)
извеняюсь, а зачем? какая разница 0,0015 или 0,0017?
если для проверки в работоспособности, так можно в коде добавить свою замерку, да будет притормаживать, но не на много 

Понимаешь когда проект из 2-3 функции то поставить замерку, а когда функци больше 300 затрах..ся ставить, плюс удобства анализа последовательности вызовов, стек представляет линейный список, а хотелось иерархичное представление. Вообщем для быстроты оптимизации своего кода, а также его анализа.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)