WPF Application Slow Unresponsive when demonstrating using remote sharing software

Posted by Kev on Stack Overflow See other posts from Stack Overflow or by Kev
Published on 2011-11-18T17:44:18Z Indexed on 2011/11/18 17:51 UTC
Read the original article Hit count: 332

Filed under:
|
|

After spending 14 hours on this I think its time to share my woes and see if anyone has experienced this issue before.

Ill describe the issue and tests I have done to rule out certain things.

Ok so I have a WPF application which loads in data from an SQL database. I am using DevExpress Components for datagrids, ribbons etc.. and FluentNhibernate to provide a session for database operations. I am also using log4net to log events to a textfile.

Using the application on my laptop with SQL Express 2008 works fine.. the application starts up, retrieves 1000 records and I can tab through the controls on the ribbon.

Now, I decided to demo the application to a third party and used remote login/sharing software online to share my desktop with the other person so as I could load the application on my laptop and they could view me using the application.

Now, the application takes approx 45 seconds to load... 30 seconds with a blank database where as, when im not sharing out my screen using the online software the application loads in about 7-10 seconds. As well as that, even using the controls in the application during the demo were very sticky, slow and unresponsive.

During the sharing session though however I was able to use other applications without any problems.. everything else worked fine.

But I cannot understand how my application works ok under normal conditions , even browsing the net at the same time etc... BUT totally fails to perform correctly when I am sharing a session with another user... the CPU usage shot up to 100% too at times when the application was trying to start up...

Please see below a list of 3rd party dlls I am using as references in my project.

  • DevExpress dlls
  • FluidKit
  • PixelLab.WPF
  • PixelLab.Common
  • Galasoft WPF Kit
  • FluentNHibernate
  • NHibernate
  • Nhibernate.ByteCode.Castle
  • Skype4ComLib
  • TXTEXTControl
  • log4net
  • LinqKit

All of these DLLs are in the output folder with the application dlls created from the class assemblys in the project. So when installed via an installer on a machine the dlls will be in the same application folder as the application file itself.

Many thanks

© Stack Overflow or respective owner

Related posts about c#

Related posts about .NET