Click or drag to resize

IRingbufferTAddAllAsyncTE Method

Adds all the items of a collection to the tail of the Ringbuffer.

Namespace:  Hazelcast.Core
Assembly:  Hazelcast.Net (in Hazelcast.Net.dll) Version: 3.12.3
Syntax
Task<long> AddAllAsync<TE>(
	ICollection<TE> collection,
	OverflowPolicy overflowPolicy
)
where TE : T

Parameters

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

Type Parameters

TE

Return Value

Type: TaskInt64
the ICompletableFuture to synchronize on completion.
Exceptions
ExceptionCondition
ArgumentNullException if batch is null, or if an item in this batch is null or if overflowPolicy is null
ArgumentExceptionif collection is empty
Remarks
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