createBatchDeliveryStrategy
Creates the built-in
batch
strategy.
Timeline for
interval: 100
with messages A, B, C at 0/20/40ms and D at 300ms:
t=0 push(A) buffer=[A], open 100ms window
t=20 push(B) buffer=[A, B]
t=40 push(C) buffer=[A, B, C]
t=100 window closes → deliver([A, B, C])
t=300 push(D) buffer=[D], open window
t=400 window closes → deliver([D])
The delivered
extra
is the one of the last message in the batch.
Exported so custom strategies can compose it.
Import
import { createBatchDeliveryStrategy } from "@hyper-fetch/sockets"
Source
Package
Parameters
createBatchDeliveryStrategy<Data, Extra>(__namedParameters: Omit<BatchDeliveryType, strategy>)
Parameters
| Name | Type | Description |
|---|---|---|
| __namedParameters | |
Returns
type DeliveryStrategyType<Input,Output,Extra> = (context: DeliveryStrategyContextType<Output, Extra>) => DeliveryControllerType<Input, Extra>;
DeliveryStrategyType<Data, Data[], Extra>
