Table of Contents

Class RetryableCopyToStreamTaskOptions

Namespace
Hi3Helper.Plugin.Core.Utility
Assembly
Hi3Helper.Plugin.Core.dll

Sets the parameters used for running a task from RetryableCopyToStreamTask instance.

public class RetryableCopyToStreamTaskOptions
Inheritance
RetryableCopyToStreamTaskOptions
Inherited Members

Properties

IsDisposeTargetStream

Whether to dispose the target Stream once Dispose() is being called.

public bool IsDisposeTargetStream { get; init; }

Property Value

bool

Remarks

Default: false

MaxBufferSize

The amount of max. buffer size to set for copy-to routine.

public int MaxBufferSize { get; init; }

Property Value

int

Remarks

Default: 4096 bytes.
This is important to set the max. buffer size NOT LESS THAN 1024 bytes and not too big than 1048576 bytes (1 MiB)

MaxRetryCount

How many retry attempts for the copy-to routine.

public int MaxRetryCount { get; init; }

Property Value

int

Remarks

Default: 5 attempts

MaxTimeoutSeconds

How many seconds before the time-out happen on each read-write operations on copy-to routine.

public double MaxTimeoutSeconds { get; init; }

Property Value

double

Remarks

Default: 10 seconds
The value CANNOT BE LOWER than 2 seconds.

RetryDelaySeconds

How many seconds of the delay before resuming copy-to routine on each retry attempt.

public double RetryDelaySeconds { get; init; }

Property Value

double

Remarks

Default: 1 second

SpeedLimiterServiceContext

The context of speed limiter service to be used for download speed throttling.

public nint SpeedLimiterServiceContext { get; init; }

Property Value

nint

Remarks

Default: Zero