BlockingCollection<T>.Take 方法 
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
从 BlockingCollection<T> 中移除一个项。
重载
| Take() | 从 BlockingCollection<T> 中移除一个项。 | 
| Take(CancellationToken) | 从 BlockingCollection<T> 中移除一个项。 | 
Take()
- Source:
- BlockingCollection.cs
- Source:
- BlockingCollection.cs
- Source:
- BlockingCollection.cs
从 BlockingCollection<T> 中移除一个项。
public:
 T Take();public T Take ();member this.Take : unit -> 'TPublic Function Take () As T返回
从集合中删除的项。
例外
基础集合已在此 BlockingCollection<T> 实例外部修改,或 BlockingCollection<T> 为空,并且已标记为完成添加。
注解
对 的 Take 调用可能会阻止,直到某个项可供删除。
删除项的顺序取决于用于创建实例的 BlockingCollection<T> 集合类型。 创建 BlockingCollection<T> 对象时,可以指定要使用的集合类型。 例如,可以为先入先出 (FIFO) 行为指定对象,或者ConcurrentStack<T>为后进先出 (LIFO) 行为指定ConcurrentQueue<T>对象。 可使用实现 IProducerConsumerCollection<T> 接口的任何集合类。 BlockingCollection<T> 的默认集合类型为 ConcurrentQueue<T>。
另请参阅
适用于
Take(CancellationToken)
- Source:
- BlockingCollection.cs
- Source:
- BlockingCollection.cs
- Source:
- BlockingCollection.cs
从 BlockingCollection<T> 中移除一个项。
public:
 T Take(System::Threading::CancellationToken cancellationToken);public T Take (System.Threading.CancellationToken cancellationToken);member this.Take : System.Threading.CancellationToken -> 'TPublic Function Take (cancellationToken As CancellationToken) As T参数
- cancellationToken
- CancellationToken
可用于取消“take”操作的令牌。
返回
从集合中删除的项。
例外
基础集合已在此 BlockingCollection<T> 实例外部修改,或 BlockingCollection<T> 为空,并且已标记为完成添加。
注解
在 Take 项可供删除或令牌取消之前,对 的调用可能会受阻。
删除项的顺序取决于用于创建实例的 BlockingCollection<T> 集合类型。 创建 BlockingCollection<T> 对象时,可以指定要使用的集合类型。 例如,可以为先入先出 (FIFO) 行为指定对象,或者ConcurrentStack<T>为后进先出 (LIFO) 行为指定ConcurrentQueue<T>对象。 可使用实现 IProducerConsumerCollection<T> 接口的任何集合类。 BlockingCollection<T> 的默认集合类型为 ConcurrentQueue<T>。