Unsolved GammaRay
-
Did somebody ever use KDAB's GammaRay?
Do you find it useful?
What are the cases that this tool helped you the most?
Background:
Lately I've been fighting with a weird bug involving theQObject
destructor ofA : public QObject
emitting a signal connected to a slot inA
that is now invalid as its destructor already did its job. Debugging it was not easy and I was wondering if I should consider an enhanced Qt debugger as GammaRay -
@VRonin
is it really a debugger?
As i always understood it, it helps you a lot to inspect the Widget/QML/GraphicsView... structure and internal mechanics of Qt.
But i've never used it myself though, only by reading some articles and docs. -
@raven-worx said in GammaRay:
is it really a debugger?
I did not try it yet but they claim here:
Augmenting your instruction-level debugger, GammaRay allows you to work on a much higher level
GammaRay [...] provid[es] domain-specific debugging aids on a much higher level.
-
@VRonin
but i think with "higher level debugging" they mean "visual" debugging, not code debugging.
You can display the tree structures, state machines, etc. which quickly lets you debug wrong behaviors.Nevertheless it can help. I would be surprised when you couldn't trigger a breakpoint when a specific signal of a specific object instance is triggered for example. But then anyway you would have to continue with your code debugger.
-
Here is a list of some things it can do: https://github.com/KDAB/GammaRay#introduction
-Michael. -
I haven't used it, but as far as I know it's used "to dissect" a Qt program. This includes event processing and marshaling, signal-slot invocations, QObject-trees (and their dynamic properties). As @raven-worx said, state machines and widget painting(!) are two places it could be real valuable.
-
@m.sue Yes, I read the docs but I wanted to know if someone actually uses it and for what