File:UML dotnet concurrent.svg

Summary

Description
English: UML class diagram of System.Collections.Concurrent in .NET
Date
Source Own work
Author Frap

Licensing

I, the copyright holder of this work, hereby publish it under the following license:
Creative Commons CC-Zero This file is made available under the Creative Commons CC0 1.0 Universal Public Domain Dedication.
The person who associated a work with this deed has dedicated the work to the public domain by waiving all of their rights to the work worldwide under copyright law, including all related and neighboring rights, to the extent allowed by law. You can copy, modify, distribute and perform the work, even for commercial purposes, all without asking permission.

Category:CC-Zero#UML%20dotnet%20concurrent.svg
Category:Self-published work

Source code

PlantUML source code:

@startuml
package System.Collections.Concurrent
{
    interface IProducerConsumerCollection<T>
    {
        CopyTo(T[] array, int index)
        ToArray()
        TryAdd(T item)
        TryTake(out T item)
    }

    class ConcurrentBag<T> implements IProducerConsumerCollection
    {
        +Count
        +IsEmpty
        __ Methods __
        ...
    }

    class ConcurrentDictionary<TKey, TValue>
    {
        +Dictionary
        +Item[]
        __ Methods __
        ...
    }

    class ConcurrentStack<T> implements IProducerConsumerCollection
    {
        +Count
        +IsEmpty
        __ Methods __
        ...
    }

    class ConcurrentQueue<T> implements IProducerConsumerCollection
    {
        +Count
        +IsEmpty
        __ Methods __
        ...
    }
    
    class BlockingCollection<T>
    {
        +BoundedCapacity
        +Count
        +IsAddingCompleted
        +IsCompleted
        __ Methods __
        ...
    }
}
@enduml
Category:UML Category:Class diagrams Category:.NET Framework Category:.NET
Category:.NET Category:.NET Framework Category:CC-Zero Category:Class diagrams Category:Self-published work Category:UML