Jump to content
uniGUI Discussion Forums

Stability Issues

Recommended Posts

Hi Everyone, I've been facing some stability issues with UniGUI, tried Windows Service Deployment and DLL deployment using both Apache and IIS, I am pretty sure it's something in our code that is causing that, what I want from you guys is, if you had any stability issues, were you able to find the source of the problem? What was it, how did you solve it?


What I want to do is create a list of problems people could have when migrating from a traditional VCL application, which is our case.


Thanks for any help.

Share this post

Link to post
Share on other sites

From my novice point of view I see unigui as the graphical interface and delphi as the engine so if I was having stability issues I'd try trap any errors within delphi exceptions blocks. Else use TApplication.OnException to try trap application errors and write them to a log. Its also possible that external application calls are being delayed (database in deadlock for example) causing thread timeouts in unigui. So connection timeouts should be adjusted as not to cause timeouts in unigui etc.

Share this post

Link to post
Share on other sites

A few general comments based on my experiences:

  • Avoid performing lengthy processing in event handlers. This causes the user interface to become unresponsive (obviously), but it seems that it can also occasionally result in unexplained crashes (see http://forums.unigui.com/index.php?/topic/8688-ajax-error-base64/).Anything that takes more than a second or so should ideally be done in a background thread.
  • Be aware that global variables are global across all user sessions, and therefore need to be accessed in a threadsafe manner. Instead of declaring a global variable, consider adding a field to UniMainModule, which only applies to the current user session.
  • Avoid creating user interfaces with very large numbers of controls. A form with several hundred dynamically-created controls - which might be no problem in a VCL application - will result in poor performance in a UniGui application. Consider using a grid instead, or at least avoid creating all of the controls at the same time.
  • Upvote 1

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now