Skip to content

2.0.571

Choose a tag to compare

@NickCraver NickCraver released this 10 Jan 21:05
· 645 commits to main since this release
  • Performance: Use new arena allocation API to avoid RawResult[] overhead
  • Performance: Massively simplified how ResultBox<T> is implemented, in particular to reduce TaskCompletionSource<T> allocations
  • Performance: Fix sync-over-async issue with async call paths, and fix the SemaphoreSlim problems that this uncovered
  • Performance: Reintroduce the unsent backlog queue, in particular to improve async performance
  • Performance: Simplify how completions are reactivated, so that external callers use their originating pool, not the dedicated IO pools (prevent thread stealing)
  • Fix: Update Pipelines.Sockets.Unofficial to prevent issue with incorrect buffer re-use in corner-case
  • Fix: KeyDeleteAsync could, in some cases, always use DEL (instead of UNLINK)
  • Fix: Last unanswered write time was incorrect
  • Change: Use higher Pipe thresholds when sending