Re: [Interest] Additional output from QtCore

2015-02-09 Thread Thiago Macieira
On Monday 09 February 2015 17:23:53 Valery Kotov wrote:
 It could be an option. But, the problem here, I have no clue where to put a
 breakpoint. =) I would expect it should be somewhere around QMetaObject. I
 will dig deer to find out.

All signal activations are a call to QMetaObject::activate. You have to go up 
one frame in the stack trace to get the signal itself.
-- 
Thiago Macieira - thiago.macieira (AT) intel.com
  Software Architect - Intel Open Source Technology Center

___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest


Re: [Interest] Additional output from QtCore

2015-02-09 Thread Valery Kotov
That's a great hint! Thank you! =)

On Mon, Feb 9, 2015 at 5:27 PM, Thiago Macieira thiago.macie...@intel.com
wrote:

 On Monday 09 February 2015 17:23:53 Valery Kotov wrote:
  It could be an option. But, the problem here, I have no clue where to
 put a
  breakpoint. =) I would expect it should be somewhere around QMetaObject.
 I
  will dig deer to find out.

 All signal activations are a call to QMetaObject::activate. You have to go
 up
 one frame in the stack trace to get the signal itself.
 --
 Thiago Macieira - thiago.macieira (AT) intel.com
   Software Architect - Intel Open Source Technology Center

 ___
 Interest mailing list
 Interest@qt-project.org
 http://lists.qt-project.org/mailman/listinfo/interest




-- 
Sincerely yours,
Valery Kotov
___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest


[Interest] Additional output from QtCore

2015-02-05 Thread Valery Kotov
Greetings everybody!

I'm looking for a piece of advice. Let me describe the problem. We have
QTimer which emits a signal each N seconds. The timer has queued connection
between timeout signal and sltTimeout slot. The slot has some output (to
identify if the signal was emitted).
For some time we have everything working perfectly fine: timer emit signal
each N seconds and sltTimeout printouts appeared each N seconds. At some
moment in time we stop receiving them, but other traces from the process
are available. Unfortunately, as far as connection is queued we can't
really say if the signal was emitted but was not handled.
Is there any way to get any additional information from QtQore about it's
internal message queue? I think it could give us some intuition why we
missed QTimer event. Could you point at some modules or classes in qtbase
which can give me an impression about what is going on inside qt?
I would really appreciate any advises from your side.

Thank you!
-- 
Sincerely yours,
Valery Kotov
___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest


Re: [Interest] Additional output from QtCore

2015-02-05 Thread Thiago Macieira
On Thursday 05 February 2015 16:22:40 Valery Kotov wrote:
 Greetings everybody!
 
 I'm looking for a piece of advice. Let me describe the problem. We have
 QTimer which emits a signal each N seconds. The timer has queued connection
 between timeout signal and sltTimeout slot. The slot has some output (to
 identify if the signal was emitted).

Why is it queued? You're adding a delay of one full event loop processing 
after the timer fires, which already happens inside the event loop.

 For some time we have everything working perfectly fine: timer emit signal
 each N seconds and sltTimeout printouts appeared each N seconds. At some
 moment in time we stop receiving them, but other traces from the process
 are available. Unfortunately, as far as connection is queued we can't
 really say if the signal was emitted but was not handled.
 Is there any way to get any additional information from QtQore about it's
 internal message queue? I think it could give us some intuition why we
 missed QTimer event. Could you point at some modules or classes in qtbase
 which can give me an impression about what is going on inside qt?
 I would really appreciate any advises from your side.

You can do that if you write a testcase. With QtTest, you can use the -vs 
option to print all signal emissions.

Another option is to just put a breakpoint and debug inside QtCore.

In any case, verify whether the timer is still alive. And drop the queue, 
since it's not really necessary...

-- 
Thiago Macieira - thiago.macieira (AT) intel.com
  Software Architect - Intel Open Source Technology Center

___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest