Debugging slow application

P

Peter Proost

Hi group,

I've got the following problem, a colleague has got an application that runs
real slow, it has a grid with about 28.000 records and ofcourse that will
cost him some speed, but the weird thing is from the grid form he opens a
detail form with a lot of controls on it (a tabcontrol with about 9 tabs all
containing textboxes, labels or his own usercontrols) , now with the
DevPartner Profiler Community Edition I "profiled" his app and initializing
the detail form took about 5.5 milion microseconds which I compared with one
of my applications and this is a normal number if you've got a lot controls
on your form. But the weird thing happend when disposing his detail form, it
takes about 15 milion microseconds and with my form (with almost the same
initialize time) it only takes 700.000 microseconds. So I guessed maybe it's
because he has a lot of controls on his tab, so I removed all controls from
all tabs except one control, I profiled the app again and the detail form
initialize time dropped to 1 milion microseconds, but his dispose allmost
dropped nothing, from 15 milion to 14.3 million. And an other weird thing my
colleague's application spends about 85% of it's time in SleepEx (a function
in Kernel32.dll) and my app spends 0.0 % of it's time in SleepEx. Anyone any
idea what could be causing this.

Greetz Peter and thanks for any hints or tips

PS: when I talk about initialize I mean the InitializeComponent() in public
sub new, and when I talk about dispose I mean MyBase.Dispose(disposing) in
Protected overloads Overrides sub Dispose(Byval Disposing as Boolean)
 
C

Cor Ligthert

Peter,

I assume that you/he never dispose(s) something yourself now?

In fact should dispose slow down your program when there are still enough
resources for other operations. (I have never seen figures about those
resources so a very abstract sentence).

Although that should be normally not recognisable time.

Cor
 
P

Peter Proost

Hi,

Cor,

the datasets, connection and dataadapters he uses are disposed automaticaly
in our framework so they shouldn't cause a problem, for the rest he doesn't
explicitly dispose anything. Have you got an idea what could be causing the
long dispose and his program spending +80% in sleepEx or could this be
caused by the slow dispose?

Greetz Peter
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top