qooxdoo / qooxdoo

qooxdoo - Universal JavaScript Framework
http://qooxdoo.org
Other
762 stars 258 forks source link

Replace timer calls with qx.event.Idle / qx.util.TimerManager (BZ#1542) #1692

Closed qx-bug-importer closed 8 years ago

qx-bug-importer commented 15 years ago

Jonathan Weiß (qooxdoo-bugs) wrote:

Replace timer calls in framework (e.g. ElementResize, History) with qx.event.Idle to keep the amount of timers low.

assigned to Adrian Olaru (adrian.olaru)

qx-bug-importer commented 15 years ago

Jonathan Weiß (qooxdoo-bugs) wrote:

Use qx.util.TimerManager for complex timers and qx.event.Idle for simple ones.

qx-bug-importer commented 15 years ago

Jonathan Weiß (qooxdoo-bugs) wrote:

-> MS: 0.8.2

qx-bug-importer commented 15 years ago

Jonathan Weiß (qooxdoo-bugs) wrote:

MS 0.8.3

qx-bug-importer commented 15 years ago

Jonathan Weiß (qooxdoo-bugs) wrote:

Enhancement -> MS: 0.9

qx-bug-importer commented 14 years ago

Andreas Ecker (@ecker) wrote:

mass renaming of 0.9 target to 1.0 (for issues with status "NEW")

qx-bug-importer commented 14 years ago

Jonathan Weiß (qooxdoo-bugs) wrote:

MS -> 1.1

qx-bug-importer commented 14 years ago

Jonathan Weiß (qooxdoo-bugs) wrote:

Moved to next milestone.

qx-bug-importer commented 13 years ago

Jonathan Weiß (qooxdoo-bugs) wrote:

MS -> unspec.

qx-bug-importer commented 13 years ago

Adrian Olaru (adrian.olaru) wrote:

accept.

qx-bug-importer commented 13 years ago

Adrian Olaru (adrian.olaru) wrote:

I've search for setTimeout and setInterval in source code and I've ignored setTimeout with an interval smaller than 100ms (most of them being 0ms). According to this blog post http://googlecode.blogspot.com/2009/07/gmail-for-mobile-html5-series-using.html, timers with an interval bigger than 100ms really affects the performance of JavaScript execution.

This is my filtered result: for setTimeout() with an interval equal or bigger than 100ms:

event/handler/Application.js this executes window.setTimeout(timer, 100); when catching an exception.

ui/core/scroll/AbstractScrollArea.js uses setTimeout twice with 100ms and 20ms respectively.

log/appender/PhoneGap.js executes a setTimeout at a 20ms interval.

for setInterval() :

lang/Function.js this is a special case. It has the functions delay and periodical, which does in essence what Idle does but without firing the events. I don't think we should change something here.

As you can see not much to be done here, I don't think we will increase the performance of our framework just by replacing this few timeout functions.

Maybe from now on, whenever we need to set an interval or delay a function just use one of many functions that qooxdoo provides for this.

Any feedback appreciated.

qx-bug-importer commented 13 years ago

Martin Wittemann (@wittemann) wrote:

Thanks for that list Adrian. I agree totally with you that these minor changes don't speed up the framework at all. So I mark the bug as invlaid because the evaluation showed that there is nothing to be done.

qx-bug-importer commented 10 years ago

Martin Wittemann (@wittemann) wrote:

Closed all bugs already shipped with a release.