1
0
mirror of https://github.com/ppy/osu.git synced 2026-05-15 12:42:48 +08:00
Commit Graph

3 Commits

  • Fix thread safety when calling BeatmapStore.GetBeatmapSets
    While usually we'd handle this locally by moving bind operations to
    `LoadComponent`, this component was explicitly made to be used in
    asynchronous scenarios (to allow cases like song select to coexist with
    realm without adding huge compliexities to the classes locally).
    
    So I think it makes sense to hide this as an implementation detail. The
    locked segments should all be quite fast to run so I do not see a
    performance issue with lock contention here.
  • Access beatmap store via abstract base class
    The intention here is to make things more testable going forward.
    Specifically, to remove the "back-door" entrance into `BeatmapCarousel`
    where `BeatmapSets` can be set by tests and bypas/block realm retrieval.