• rsesek@chromium.org's avatar
    Add instrumentation to the MessagePumpMac family of classes. · 370d7cb8
    rsesek@chromium.org authored
    This adds UMA-uploaded histograms of sampling intervals for key points of data:
    * Total time spent in a CFRunLoop
    * Total time waiting in CFRunLoop
    * Total time servicing MessagePump::Delegate (the MessageLoop)
    * The MessageLoop queue size and queueing delay before servicing
    
    It adds 1 second sampling for 15 seconds at startup, only for the main thread
    (NSApplication-based) run loops.
    
    The data will be used to determine if adding scheduling-like behavior to the
    MessagePump will result in more efficient processing of the MessageLoop work.
    
    An unforunate side effect of this change is exposing another method on the
    MessagePump::Delegate interface, but there does not appear to be a better way
    to do this.
    
    BUG=264886
    R=jar@chromium.org, mark@chromium.org
    
    Review URL: https://codereview.chromium.org/22911026
    
    git-svn-id: svn://svn.chromium.org/chrome/trunk/src@221427 0039d316-1c4b-4281-b951-d872f2087c98
    370d7cb8
message_pump.h 5.81 KB