[Freeciv-Dev] Re: (PR#3513) GUI is unresponsive while handling network e
[Top] [All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
On Sun, Feb 23, 2003 at 11:52:24PM -0800, Jason Short wrote:
> While the client is in the network loop, no user-interface events are
> handled. This means operations like closing popup windows and redrawing
> areas that have been invalidated (e.g., by being covered by those popup
> windows) don't get done until the end of the network loop.
The only way I know to avoid this is to use multi-threading. However
this will only solve this problem partially. The network thread will
set the data to an inconsistent state in a regular way. The GUI thread
however won't be amused about inconsistent state. This is a normal
problem of multi-threading programming. It is solved by locks. But
even when we would use threads and locks I don't think the result will
be complete since most of the network code will be run with the lock
held. So little gain for a lot of work.
Make a software that is foolproof, and only fools will want to use it.