RingBufferPlus API:IRingBufferScaleMin
IRingBufferScaleMin<T>
Namespace: RingBufferPlus
Represents the MinCapacity commands to RingBufferPlus.
public interface IRingBufferScaleMin<T>
Type Parameters
T
Type of buffer.
Methods
Build()
Validate and generate RingBufferPlus to service mode.
IRingBufferService<T> Build()
Returns
BuildWarmup(ref Boolean, Nullable<TimeSpan>)
Validate and generate RingBufferPlus and warmup with full capacity ready or reaching timeout (default 30 seconds).
IRingBufferService<T> BuildWarmup(ref Boolean fullcapacity, Nullable<TimeSpan> timeout)
Parameters
fullcapacity
Boolean&
True if Warmup has full capacity, otherwise false.
timeout
Nullable<TimeSpan>
The Timeout to Warmup has full capacity. Default value is 30 seconds.
Returns
MaxCapacity(Int32)
Maximum capacity.
IRingBufferScaleMax<T> MaxCapacity(int value)
Parameters
value
Int32
The maximum buffer.
Returns
RollbackWhenFreeLessEq(Nullable<Int32>)
Condition to scale up to default capacity.
The free resource (averange collected) must be less than or equal to value.
RollbackWhenFreeLessEq do not used with TriggerByAccqWhenFreeLessEq command.
RollbackWhenFreeLessEq do not use with Manual/Slave scale
IRingBufferScaleMin<T> RollbackWhenFreeLessEq(Nullable<Int32> value)
Parameters
value
Nullable<Int32>
Number of averange collected.
Defaut = Min (Min = 1, Max = MinCapacity).
Returns
ScaleWhenFreeGreaterEq(Nullable<Int32>)
Condition to scale down to min capacity.
The free resource collected must be greater than or equal to value.
ScaleWhenFreeGreaterEq do not use with Manual/Slave scale
IRingBufferScaleMin<T> ScaleWhenFreeGreaterEq(Nullable<Int32> value)
Parameters
value
Nullable<Int32>
Number to free resource.
Defaut = Max. (Min = 2, Max = Capacity).
Returns
TriggerByAccqWhenFreeLessEq(Nullable<Int32>)
Condition to trigger to default capacity (check at foreach accquire).
The free resource collected at aqccquire must be less than or equal to value.
TriggerByAccqWhenFreeLessEq do not used with RollbackWhenFreeLessEq command.
TriggerByAccqWhenFreeLessEq do not use with Manual/Slave scale
IRingBufferScaleMin<T> TriggerByAccqWhenFreeLessEq(Nullable<Int32> value)
Parameters
value
Nullable<Int32>
Number to trigger.
Defaut = Max-1 (Min = 2, Max = MinCapacity).