Skip to content

Documentation for AsyncQueue.IsCompleted is incorrect; should indicate it depends on whether the queue is emptp #1306

Closed

Description

Bug description

The documentation for IsCompleted is "Gets a value indicating whether the queue has completed." which implies that it is determined by whether AsyncQueue.Complete() has been called.

The actual implementation seems to be:

    public bool IsCompleted
    {
        get
        {
            lock (SyncRoot)
            {
                return completeSignaled && IsEmpty;
            }
        }
    }

Which returns true if and only if the queue is completed and it is empty.

Changing the implementation at this point would be bad, but the documentation should be changed to something like:
"Gets a value indicating whether the queue has completed and empty."

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions