有没有办法查看哪些信号被触发,以及是否有连接到它们的插槽?理想情况下,我们希望看到所有信号,而不仅仅是特定类或方法的信号;例如QSignalSpy仅允许我们跟踪特定实例的特定信号。
在我们的应用程序中,由于信号从不同组件发出两次,我们已经看到了性能问题。最后,事实证明,有一个类的第二个实例应该只有一次。知道发出哪些信号确实有助于调试。
通过QMetaObject::invoke*
调用信号,我希望找到一些东西可以挂钩,但我没有发现任何明显的信息。
答案 0 :(得分:5)
(免责声明,我为KDAB工作):KDAB的GammaRay tool可以在运行时向您显示对象和连接,而无需任何源更改。它检查元对象表并执行一些代码注入挂钩以使其工作。
答案 1 :(得分:1)