Class SnapSinkAllocationStrategy

The SnapSink buffer allocation strategy defines how many buffers are pre-allocated, when additional buffers are created, and when excess buffers are reclaimed.

Inheritance
SnapSinkAllocationStrategy
Namespace: ic4
Assembly: ic4dotnet.dll
Syntax
public class SnapSinkAllocationStrategy

Properties

NumBuffersAllocationThreshold

Defines the minimum number of required free buffers.

If the number of free buffers falls below this, new buffers are allocated.

Declaration
public int NumBuffersAllocationThreshold { get; set; }
Property Value
Type Description
int

The minimum number of required free buffers.

NumBuffersFreeThreshold

Defines the maximum number of free buffers

If the number of free buffers grows above this, buffers are freed.

If set to 0, buffers are not freed automatically.

Declaration
public int NumBuffersFreeThreshold { get; set; }
Property Value
Type Description
int

The maximum number of free buffers

Remarks

If NumBuffersFreeThreshold is not 0, it must be larger than NumBuffersAllocationThreshold + 2.

NumBuffersMax

Defines the maximum total number of buffers this sink will allocate.

This includes both free buffers managed by the sink and filled buffers owned by the program.

Declaration
public int NumBuffersMax { get; set; }
Property Value
Type Description
int

The maximum total number of buffers this sink will allocate

Remarks

If set to 0, there is no limit to the total number of buffers.

NumBuffersToAllocateOnConnect

Defines the number of buffers to auto-allocate when the stream is set up.

Declaration
public int NumBuffersToAllocateOnConnect { get; set; }
Property Value
Type Description
int

The number of buffers to auto-allocate when the stream is set up