Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [cdt-dev] Hang in GdbConnectCommand.canConnect()

> On 3 Aug 2011, at 18:59, Marc Khouzam wrote:
> 
> >> -----Original Message-----
> >> From: cdt-dev-bounces@xxxxxxxxxxx 
> >> [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of Derek Morris
> >> Sent: Wednesday, August 03, 2011 1:36 PM
> >> To: CDT General developers list.
> >> Subject: [cdt-dev] Hang in GdbConnectCommand.canConnect()
> >> 
> >> Hi,
> >> 
> >> I am extending DSF-GDB to support our debug environment. I 
> >> have the debugger connecting and debugging ok, as well as 
> >> showing our additional view. The debug session seems to be 
> >> working as expected.
> >> 
> >> However, when I try to exit the debug session, I get a hang 
> >> in  GdbConnectCommend.canConnect() - it is stuck in 
> >> canConnectQuery.get().

You could be in a deadlock.
GdbConnectCommend.canConnect() needs the DSF Executor to complete
and locks the UI thread during that call.
If the DSF Executor is itself waiting for the UI thread, your
hosed.

Try this:
1- Java Debug your Eclipse execution and wait for things to hand.
2- Go to the Debug view
3- select "Thread [main]" and interrupt it.  This is the UI thread.
   See what it is blocked on.
4- select "Thread [org.eclipse.cdt.dsf.gdb - 0]" and interrupt it.
   This is the DSF executor.  See what it is blocked on.

That should allow you to figure out if you have such a deadlock.

Marc




Back to the top