Vaadin lets you build secure, UX-first PWAs entirely in Java.
Free ebook & tutorial.
Prevent UI updated in another thread from being irresponsive
In my Vaadin Application I have a table which is being updated in another thread very often, sometimes 50 times in one second. I use DontPush OzoneLayer for propagating the changes to the UI and it works fine.
Every time the table is being updated I synchronize on the App - I must do this to avoid inconsistent states. So my Application is very often blocked and irresponsive. The table has a column with checkboxes, in order to select a checkbox the user must click more times until the checkbox is selected, most of the times his click events get lost and nothing happens. Another effect is that the scroll bar of the table cannot be always moved, it jumps most of the time to its earlier position...
I would like to have the app much more responsive. Does someone know what can I do to prevent the app being blocked most of the time?
I don't think 50 times per second is realistic through internet with a few users anyway.
It may work really well locally but once deployed it will break down with lag.
I will try to update the Table with the Refresher or ICEPush Add-On once per Second. This should be enough for the users...