Slow As Molasses

  • Thread starter Thread starter John Bailo
  • Start date Start date
J

John Bailo

Is it me?

Or do Windows Forms run as slow as molasses?

I launch a child form from a parent and it takes ages to appear?

Why ?!?!
 
I have noticed that the first time that you open a .NET application that it
takes forever, but after the initial load it will load very quickly. The
Visual Studio .NET 2003 IDE is a perfect example. Restart your computer,
load VS.NET 2003 and see how long it takes to open. Closed VB.NET and start
if up again. Loads almost instantly.
 
Hi John,

It shouldn't take long. What does the second form do in the load event or
in the initialization?

Bernie Yaeger
 
John Bailo said:
Is it me?

Or do Windows Forms run as slow as molasses?

I launch a child form from a parent and it takes ages to appear?

Why ?!?!

WinForms in general is sluggish for me.
 
John said:
Or do Windows Forms run as slow as molasses?

I find that the first time the application loads, it is slow. But
thereafter, accessing a form that has been loaded before is fast. This
is inline with the way that WinForms and .NET was designed to work.
 
John - is there anything special happening when the form loads (ie making a
trip to the db to grab data)? If so, you may want to use a separate thread
or async delegate to increase the responsiveness of the UI. If that's not
the problem, it may well just be due to the inherent performance associated
with a managed runtime. Does this problem persist across the board or just
on a specific form or app?
 
Is it me?
Or do Windows Forms run as slow as molasses?
I launch a child form from a parent and it takes ages to appear?

Why ?!?!
It depends on what you are doing in that loding phase of the form.
Only the first time, the loading is slow since the IL is compiled into
machine code on the fly the first time you use that part of the code. But
once loaded it should run near c++ speed, tests here suggests 5% slower on
average.

Unlike C++ unmanaged code (aka conventional exe code), the code is not
compiled and optimized at compile time at the developrs PC, but at the CLR
on the users machine, optimizing it for that machine. In theory in tim you
same program wil actually run faster when new versions of the .NET framework
gets distributed. No need of recompiling the source code.

One very nice side-effect in this is that you can create a neutral .NET
program, that will run as pure 32 bit when you run it on a 32 bit machine
and pure 64 bit on a 64 bit machine.Only one distributable exist in this
case. (see upcoming Visual Studio 2005 for this)
 
W.G. Ryan MVP said:
John - is there anything special happening when the form loads (ie making a
trip to the db to grab data)? If so, you may want to use a separate thread
or async delegate to increase the responsiveness of the UI. If that's not
the problem, it may well just be due to the inherent performance associated
with a managed runtime. Does this problem persist across the board or just
on a specific form or app?

Great idea...it's populating a combo box from a web method (connected to
a database)...so I'll thread that.

However, my impression from other forms in this app, that are not
database bound, is that they are slow.

I even broke out of VS.NET which I had been assuming was the reason that
the forms were so slow, and, using a version compiled for Release, and
found that they were slow.
 
Timing should allow to narrow down possible problems. The next time you
could start with an empty form and time as you go so that you can see how it
evolves as you add components...
 
John,

Hi guys, I am not a native English speaker, is Molasses that what is a very
good drinkable when you have distillate it?

I could not resist

:-)

Cor
 
Molasses is a thick syrup and IMHO, quite disgusting. It's kind of like old
motor oil from your car, with some sugar added to it
 
Back
Top