[Development] [fix]: Assistant (and others) burning CPU because of #f27d1ccbb24ec2fd4098f2976503478831006cc8 ?
René J.V. Bertin
rjvbertin at gmail.com
Tue Aug 29 02:06:18 CEST 2017
On Monday August 28 2017 23:10:22 René J.V. Bertin wrote:
I found a potential fix: shouldn't QCocoaMenu::timerEvent() call
killTimer(m_updateTimer);
before setting m_updateTimer=0? Whether or not it's appropriate, this does solve the CPU burning for me.
R.
> Hi,
>
> I noticed an annoying change after doing the periodic merge of changes in the qtbase/5.9 branch with my standalone Cocoa QPA.
> Commit f27d1ccbb24ec2fd4098f2976503478831006cc8 introduced a delayed invocation of [NSMenu update], which looks like a good idea. However, in some applications, including the Assistant, this somehow causes QCocoaTimer::timerEvent() to be called continuously, always with timerId 454.
>
> That's in Qt 5.9.1 (stock, release) but also in my own patched Qt 5.8.0; the former with the standalone QPA backported to OS X 10.9 and for the latter, backported to Qt 5.8 too.
>
> I cannot really imagine that this is an effect of the backporting; QTimer has been around for too long and the consistency of the id=454 timer suggests something else is going on.
>
> The other applications in which I notice the CPU burning issue are KDevelop and Creator : like Assistant they both use QtHelp functionality.
>
> Thanks,
> René
More information about the Development
mailing list