• Gabriel Charette's avatar
    [base] Experiment with PM_NOYIELD in Win's MessagePumpForUI · 092c1026
    Gabriel Charette authored
    Jank analysis uncovered that Windows uses native ::PeekMessage calls as
    an opportunity to yield to other threads according to some heuristics
    (e.g. presumably when there's no input but perhaps a single WM_USER
    message posted later than another thread was readied). MessagePumpForUI
    doesn't intend to give this opportunity to the kernel when invoking
    ::PeekMessage however as it runs most tasks out-of-band. Hence,
    PM_NOYIELD should be used to tell ::PeekMessage it's not the only source
    of work for this thread.
    
    R=fdoray@chromium.org
    
    Bug: 1075960
    Change-Id: Ic8808cab8c15aa690f7dfd8405741323285c107b
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2169728
    Auto-Submit: Gabriel Charette <gab@chromium.org>
    Commit-Queue: François Doray <fdoray@chromium.org>
    Reviewed-by: default avatarFrançois Doray <fdoray@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#763349}
    092c1026
message_pump_win.cc 30.1 KB