Skip to content

Conversation

eddyashton
Copy link
Member

This PR contains some follow-up cleanups from the discussion in #7269:

  • Returning const std::string& from the get_name calls to avoid any additional copies. The name is generally per-type, can opt in to per-instance where appropriate, in either case it should be formatted/constructed eagerly.
  • Removing the .empty() method. Replaced by a get_summary() returning some basic stats about the current queue state.
  • API simplification, removing unnecessary IJobBoard and clarifying which tests (most) are testing a local JobBoard vs the global static ccf::tasks.

Also a perf improvement - rather than gluing together discrete condition_variable and locked queue (taking 2 separate mutexes in sequence) we use a condition_variable wait for workers to pause directly on the work queue.

@eddyashton eddyashton requested a review from a team as a code owner September 26, 2025 12:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant