JADE Environment Development Ideas

What's new in the upcoming JADE release?

IMPROVED DEVELOPER EFFICIENCY. ENHANCED SECURITY. SMOOTHER INTEGRATION

The JADE 2022 release meets tomorrow’s business demands.


Start your update to JADE's latest release

paint on a separate thread

In JADE, window messages are processed on the same thread as the main logic, so when it's busy running code it doesn't process window messages.

Because it doesn't process paint messages, it looks like it's crashed, Windows says it's not responding and users complain or kill it using Task Manager.

I think other programming languages handle this by processing paint messages on a separate thread from the main logic so the main logic never keeps the window from repainting.

Even as a developer it's annoying when Jadload stops repainting while it's loading schemas.
  • John Munro
  • May 1 2019
  • Closed
HistoricalComments
Brian Johnstone 26/03/2018 5:42:45 PM
When we are going to perform a potentially long running task, we display a progress dialog and ensure that we do 'time based' refreshes of the progress dialog so that users can see it making progress without negatively impacting performance with large numbers of round-trips to the presentation client and back again to 'update the progress' or 'allow a repaint' to occur. This helps reduce/remove the risk of the users killing it with Task Manager. Having the application be 'non-blocking', by removing the blocking call on the main UI thread would mean that Jade would also need to ensure users can't interact with the form, such as clicking the close/terminate etc buttons, as you wouldn't want that happening either in the middle of your logic, nor would you want any interleaving of event methods being sent back to your logic as that could cause very interesting behaviour with the current/expected state of things at the time of events being fired. (It's already bad enough when you come across someone coding an app.doWindowEvents when what they really wanted to use was 'someWindow.doWindowEvents' to allow their progress dialog to refresh or a 'Cancel button' to be clicked or similar.)
  • Attach files
  • Admin
    John Richards commented
    August 23, 2022 00:42

    Hi John, We have discussed this suggestion on a number of occasions and the conclusion we have reached is that the changes required would be too invasive and the risk too high compared to the advantages it would bring. So, I am sorry we will be closing this one. Thanks for your input. John R.

  • +2