Re: [gui-dev] Startup deadlock problems

Sam Berlin <[email protected]> Fri, 23 Jul 2004 14:46:38 -0400
Newsgroups gmane.network.gnutella.limewire.gui.devel
Message-ID <[email protected]>
Hi Jens-Uwe,

What version of Java are you using on the boxes?   We have no 
experienced these errors, so it is very strange that you are seeing it 
1/3 of the time on XP.

I did experiment at one time with putting the initial 
GUIMediator.instance call in the Swing thread, but noticed (as you saw) 
that the splash screen wasn't updated.  The problem was that the update 
required the Swing thread to show, but it was blocked by the 
construction of the GUI.  Rather than try and separate out the 
problematic points, it seemed unnecessary to put the construction in 
the Swing thread, since there were no problems at the time.

Can you hit 'ctrl-break' during these deadlocks to have Java show where 
the deadlock is occurring?  (On OSX you can send a kill with the 
interrupt signal.)

Thanks,
  Sam

On Friday, July 23, 2004, at 02:35  PM, Jens-Uwe Mager wrote:

> On my XP box I have the problem that LimeWire quite fails to start
> properly probably one out of three times. I have the same problem under
> OS X, although it appears to happen there much more seldom. The problem
> manifests itself that main the frame does not appear after the splash
> screen is dismissed. Under XP this causes LimeWire to be invisible on
> the task bar, one has to use task manager to kill it and try again.
> Under OS X the Menu bar with just the LimeWire menu appears but using
> the Quit option does nothing, one has to force quite LimeWire to try
> again.
>
> This reminded me of an issue I did read in the Java Swing Tutorial,
> namely the possible deadlock possible if modifying components that have
> already been realized. See:
>
> http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html
>
> After wrapping the call to Initializer.initialize() into a
> SwingUtilities.invokeLater() the deadlock does indeed disappear,
> although painting of the splash screen does not appear to happen any
> more. This appearently means that the construction of the gui needs to
> be more cleanly seperated out to avoid threading issues. What do you
> think? Am I barking up the wrong tree?
> -- 
> Jens-Uwe Mager	<pgp-mailto:F476EBC2>
> _______________________________________________
> gui-dev mailing list
> [email protected]
> http://www.limewire.org/mailman/listinfo/gui-dev
>

_______________________________________________
gui-dev mailing list
[email protected]
http://www.limewire.org/mailman/listinfo/gui-dev