concurrency.stream.throttling

Undocumented in source.

Members

Enums

ThrottleEmitLogic
enum ThrottleEmitLogic
Undocumented in source.
ThrottleTimerLogic
enum ThrottleTimerLogic
Undocumented in source.

Functions

debounce
auto debounce(Stream s, Duration d)

debounce skips all items which are succeeded by another within the duration. Effectively it only emits items after a duration of silence

throttleFirst
auto throttleFirst(Stream s, Duration d)

throttleFirst forwards one item and then enters a cooldown period during which it ignores items

throttleLast
auto throttleLast(Stream s, Duration d)

throttleLast starts a cooldown period when it receives an item, after which it forwards the lastest value from the cooldown period

throttling
auto throttling(Stream stream, Duration dur)
Undocumented in source. Be warned that the author may not have intended to support it.

Structs

SenderReceiver
struct SenderReceiver(Op, Value)
Undocumented in source.
TimerReceiver
struct TimerReceiver(Op, ElementType, ThrottleEmitLogic emitLogic, ThrottleTimerLogic timerLogic)
Undocumented in source.

Templates

ThrottleStreamOp
template ThrottleStreamOp(Stream, ThrottleEmitLogic emitLogic, ThrottleTimerLogic timerLogic)
Undocumented in source.

Meta