Show / Hide Table of Contents

    Class AsyncQueue<T>

    A simple asynchronous multi-thread supporting producer/consumer FIFO queue with minimal locking.

    Inheritance
    Object
    AsyncQueue<T>
    Namespace: Advanced.Algorithms.Distributed
    Assembly: Advanced.Algorithms.dll
    Syntax
    public class AsyncQueue<T> : object
    Type Parameters
    Name Description
    T

    Properties

    Count

    Declaration
    public int Count { get; }
    Property Value
    Type Description
    Int32

    Methods

    DequeueAsync(Int32, CancellationToken)

    Supports multi-threaded consumers. Time complexity: O(1).

    Declaration
    public Task<T> DequeueAsync(int millisecondsTimeout = null, CancellationToken taskCancellationToken = null)
    Parameters
    Type Name Description
    Int32 millisecondsTimeout
    CancellationToken taskCancellationToken
    Returns
    Type Description
    Task<T>

    EnqueueAsync(T, Int32, CancellationToken)

    Supports multi-threaded producers. Time complexity: O(1).

    Declaration
    public Task EnqueueAsync(T value, int millisecondsTimeout = null, CancellationToken taskCancellationToken = null)
    Parameters
    Type Name Description
    T value
    Int32 millisecondsTimeout
    CancellationToken taskCancellationToken
    Returns
    Type Description
    Task
    Back to top Generated by DocFX