BlockingCollection<T>.CopyTo(T[], Int32) Method


Copies all of the items in the BlockingCollection<T> instance to a compatible one-dimensional array, starting at the specified index of the target array.

 void CopyTo(cli::array <T> ^ array, int index);
public void CopyTo (T[] array, int index);
member this.CopyTo : 'T[] * int -> unit
Public Sub CopyTo (array As T(), index As Integer)



The one-dimensional array that is the destination of the elements copied from the BlockingCollection<T> instance. The array must have zero-based indexing.


The zero-based index in array at which copying begins.


The array argument is null.

The index argument is less than zero.

The index argument is equal to or greater than the length of the array.

The destination array is too small to hold all of the BlockingCollection elements.

The array rank doesn't match.

The array type is incompatible with the type of the BlockingCollection elements.


CopyTo represents a snapshot of the collection at a precise point in time. If other threads are adding or removing items while CopyTo is executing, then the elements returned by CopyTo might not represent the state of the collection.

Applies to

See also