Skip to content

feat: add MPSC ring-backed TaskExecutor - #63

Merged
LimiNode merged 1 commit into
mainfrom
codex/add-mpsc-buffer-support-to-taskexecutor
Sep 15, 2025
Merged

feat: add MPSC ring-backed TaskExecutor#63
LimiNode merged 1 commit into
mainfrom
codex/add-mpsc-buffer-support-to-taskexecutor

Conversation

@LimiNode

Copy link
Copy Markdown
Owner

Summary

  • add lock-free MPSC ring support with optional DropOldest coordination slow-path to TaskExecutor while preserving the legacy queue fallback
  • teach MpscRingAny to support moves and safe destruction so the executor ring can be rebuilt when idle
  • enable the new behaviour by default through build options that define LOGIT_USE_MPSC_RING and LOGIT_ENABLE_DROP_OLDEST_SLOWPATH

Testing

  • cmake -S . -B build -DLOGIT_CPP_BUILD_TESTS=ON
  • cmake --build build
  • ctest --test-dir build

https://chatgpt.com/codex/tasks/task_e_68c89838fa1c832c8c3a0a5cfd0d610b

Introduce optional lock-free MPSC ring queue in TaskExecutor with drop-oldest coordination slow-path and enable it by default via CMake.
@LimiNode
LimiNode merged commit 9e9e639 into main Sep 15, 2025
10 checks passed
@LimiNode
LimiNode deleted the codex/add-mpsc-buffer-support-to-taskexecutor branch September 20, 2025 05:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant