How can a Delphi TPersistent object calculate its own deserialization time?
Posted
by mjustin
on Stack Overflow
See other posts from Stack Overflow
or by mjustin
Published on 2010-03-14T12:27:57Z
Indexed on
2010/03/14
12:45 UTC
Read the original article
Hit count: 249
For performance tests I need a way to measure the time needed for a form to load its definition from the DFM. All existing forms inherit a custom form class.
To capture the current time, this base class needs overriden methods as "extension points":
- start of the deserialization process
- after the deserialization (can be implemented by overriding the
Loaded
procedure) - the moment just before the execution of the
OnFormCreate
event
So the log for TMyForm.Create(nil)
could look like:
- 00.000 instance created
- 00.010 before deserialization
- 01.823 after deserialization
- 02.340 before OnFormCreate
Which TObject (or TComponent) methods are best suited? Maybe there are other extension points in the form creation process, please feel free to make suggestions.
© Stack Overflow or respective owner