Repository navigation
v0.3.1 -- Performance improvements
Reduce allocations and overhead across core operators and concurrency primitives.
Changes
-
PullFilter: filter in-place with
Vec::retaininstead of allocating a newVecper chunk -
PullAndThen: reuse a persistent buffer across
next_chunkcalls, eliminating repeated heap allocations forfilter_mapoperations -
par_eval_map: replace per-element oneshot channels with
JoinHandles, removing one channel allocation per element. Decouple chunk pulling from task spawning via an intermediateVecDequebuffer. -
BroadcastReceiver: use
Arc::try_unwrapto take ownership of shared chunks without cloning when the receiver holds the last reference
Cleanup
- Remove unused
to_pascal_casefunction frompipe-macros - Remove unused
PipeErrorimports fromcancelandmetermodules - Remove redundant
namefield fromPullMeter