what do you think about two threads in the client. One takes care about the GUI, especially redrawing. E.g. when the user is changeing the window size. And the ohter thread does the communication with the server.
The effect sould be that the app dosnt seems to be frozen while wating for the server seponse.
internally the communication has a flag if to be done in a separate thread or not (and already use it: in the editor e.g. the update of the message area is done asynchronously).
We'll check if we open this up for all processing.
This is currently not on our short term list: the only current disadvantage is that while resizing during server comunication the re-drawing is done delayed. All drawing operations which need to be done before communicating are done before start of communication - the communication is embedded into the event queue and is not direcetly called. So the effect for "normal" usage is not visible....