Skip to content
  • Kai Willadsen's avatar
    matchers.helpers: Schedule our result check to the main scheduler · 5f2c23f5
    Kai Willadsen authored
    Previously we scheduled the result check to the GLib mainloop in an idle
    handler. This had the downsides that we would spin constantly waiting
    for results, and while waiting for results we weren't showing as busy.
    
    In 68bf29, we changed the result checker to run on a 10 msec timeout,
    which solved the busy looping, but delayed results slightly and still
    didn't show our normal busy indicator.
    
    This commit switches both these things up so that we now run our results
    check in the main application scheduler (which runs as a GLib idle
    handler) and therefore we get correct a busy indicator. Doing this
    brings back the busy-loop CPU usage issue, so here we also switch up
    the result retrieval so that we actually block for 1ms when trying to
    retrieve a result, instead of not waiting at all. This is quite
    unpleasant, but it's effective.
    5f2c23f5