Page 1 of 1

Optimization advise

Posted: Thu Mar 04, 2010 7:33 am
by Martin Hart Turner
Hi:

I am trying to optimize the way StimulReports works in our WinForms program, and I have taken several steps that have improved performance drastically, but I have a problem that I need help with.

One step I have taken is to compile reports to a dll, and this works fine and is a considerable speed optimization. Another step I have taken is to create a cache of frequently used reports to keep them in memory, and return the in-memory report when requested. This has made a huge improvement. I use a MRU algorithm so I don't hog all the available memory.

Now what I would like to do is clear the DataStore if reports that have been used, but have been idle for more than 'x' mins. I will use a Timer to control the idle time, but I need to know how and what data I can safely clear. Also, is there any way to determine if the report is currently being printed/shown?

Any other advise would be greatfully accepted!

Regards,
Martin.

Optimization advise

Posted: Thu Mar 04, 2010 4:07 pm
by Jan
Hello Martin,

You can remove all data sources which linked to report after report rendering. All information which required for report printing and showing stored in report property - RenderedPages. You can clear report.DataStore property and report.DataSources property after report rendering.

Thank you.