IRingbufferTAddAllAsyncTE Method Hazelcast .Net Client Class Library
Adds all the items of a collection to the tail of the Ringbuffer.

Namespace: Hazelcast.Core
Assembly: Hazelcast.Net (in Hazelcast.Net.dll) Version:

Task<long> AddAllAsync<TE>(
	ICollection<TE> collection,
	OverflowPolicy overflowPolicy
where TE : T


Type: System.Collections.GenericICollectionTE
the batch of items to add.
Type: Hazelcast.CoreOverflowPolicy
overflow policy to use

Type Parameters


Return Value

Type: TaskInt64
the ICompletableFuture to synchronize on completion.

ArgumentNullException if batch is null, or if an item in this batch is null or if overflowPolicy is null
ArgumentExceptionif collection is empty

Adds all the items of a collection to the tail of the Ringbuffer. A addAll is likely to outperform multiple calls to Add(T) due to better io utilization and a reduced number of executed operations. If the batch is empty, the call is ignored. When the collection is not empty, the content is copied into a different data-structure. This means that:
  1. after this call completes, the collection can be re-used.
  2. the collection doesn't need to be serializable
If the collection is larger than the capacity of the ringbuffer, then the items that were written first will be overwritten. Therefor this call will not block. The items are inserted in the order of the Iterator of the collection. If an addAll is executed concurrently with an add or addAll, no guarantee is given that items are contiguous. The result of the future contains the sequenceId of the last written item
See Also