Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gui: Optimize locks to improve responsiveness #2137

Merged
merged 2 commits into from
May 19, 2021

Commits on May 18, 2021

  1. Skip GUI locking cs_main for periodic updates

    This change skips update intervals when the GUI cannot obtain a lock
    for "cs_main". It avoids stalling the GUI thread when a long-running
    operation holds the mutex for:
    
     - The overview page refresh
     - The researcher context refresh
    cyrossignol committed May 18, 2021
    Configuration menu
    Copy the full SHA
    ee2fbfb View commit details
    Browse the repository at this point in the history
  2. Optimize GUI locks for tx generated type lookups

    This optimizes how the GUI determines the "mined" type of a coinstake
    transaction. It reorganizes the lookups to avoid the cs_main locks if
    the node is busy with another operation. This prevents GUI stalls for
    routine updates of the overview and history pages from core state. It
    prevents the long-running polls load on the voting page from bricking
    the GUI thread.
    cyrossignol committed May 18, 2021
    Configuration menu
    Copy the full SHA
    7ed188d View commit details
    Browse the repository at this point in the history