草庐IT

GammaRay

全部标签

c++ - 调试 Qt 信号、插槽和连接

有没有办法查看触发了哪些信号,以及是否有插槽连接到它们?理想情况下,我们希望看到all信号,而不仅仅是特定类或方法的信号;例如QSignalSpy只允许我们跟踪特定实例的特定信号。在我们的应用程序中,我们发现了性能问题,因为信号从不同的组件发出两次。最后,事实证明有一个类的第二个实例应该只存在一次。准确了解发出了哪些信号有助于调试。信号是通过QMetaObject::invoke*调用的,我希望在那里找到一些可以Hook的东西,但我没有发现任何明显的东西。 最佳答案 (免责声明,我为KDAB工作):KDAB的GammaRaytool

c++ - 调试 Qt 信号、插槽和连接

有没有办法查看触发了哪些信号,以及是否有插槽连接到它们?理想情况下,我们希望看到all信号,而不仅仅是特定类或方法的信号;例如QSignalSpy只允许我们跟踪特定实例的特定信号。在我们的应用程序中,我们发现了性能问题,因为信号从不同的组件发出两次。最后,事实证明有一个类的第二个实例应该只存在一次。准确了解发出了哪些信号有助于调试。信号是通过QMetaObject::invoke*调用的,我希望在那里找到一些可以Hook的东西,但我没有发现任何明显的东西。 最佳答案 (免责声明,我为KDAB工作):KDAB的GammaRaytool