switon/sync
Composer 安装命令:
composer require switon/sync
包简介
In-process channels, mutexes, wait groups, and stacks for coroutine-aware coordination for Switon Framework
README 文档
README
Switon's synchronization primitives for bounded handoff, mutual exclusion, task joining, and LIFO reuse in coroutine and non-coroutine runtimes.
Highlights
- Coroutine-friendly primitives: the same contracts work in coroutine and non-coroutine runtimes.
- Bounded channels:
Channelprovides fixed-capacity FIFO handoff. - Scoped mutexes:
Mutex::guard()returns a lock for deterministic release. - Task joining:
WaitGroupblocks until registered work finishes. - LIFO reuse:
Stackprovides fixed-capacity last-in-first-out reuse.
Installation
composer require switon/sync
Quick Start
use Switon\Sync\Channel; use Switon\Sync\Mutex; use Switon\Sync\WaitGroup; $channel = new Channel(2); $channel->push('task-1'); $task = $channel->pop(); $mutex = new Mutex(); $lock = $mutex->guard(); try { // critical section } finally { $lock->release(); } $wg = WaitGroup::of(2); $wg->done(); $wg->done(); $wg->wait();
Docs: https://docs.switon.dev/latest/sync
License
MIT.
统计信息
- 总下载量: 43
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 3
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2026-06-07