initial value of accumulator
helper object defining how to add elements of type R
and T
Merge two accumulable objects together
Merge two accumulable objects together
Normally, a user will not want to use this version, but will instead call +=
.
the other R
that will get merged with this
Add more data to this accumulator / accumulable
Add more data to this accumulator / accumulable
the data to add
Add more data to this accumulator / accumulable
Add more data to this accumulator / accumulable
the data to add
Get the current value of this accumulator from within a task.
Get the current value of this accumulator from within a task.
This is NOT the global value of the accumulator. To get the global value after a
completed operation on the dataset, call value
.
The typical use of this method is to directly mutate the local value, eg., to add an element to a Set.
Merge two accumulable objects together
Merge two accumulable objects together
Normally, a user will not want to use this version, but will instead call add
.
the other R
that will get merged with this
Set the accumulator's value; only allowed on master
Access the accumulator's current value; only allowed on master.
Set the accumulator's value; only allowed on master.
A datatype that can be accumulated, i.e. has an commutative and associative "add" operation, but where the result type,
R
, may be different from the element type being added,T
.You must define how to add data, and how to merge two of these together. For some datatypes, such as a counter, these might be the same operation. In that case, you can use the simpler Accumulator. They won't always be the same, though -- e.g., imagine you are accumulating a set. You will add items to the set, and you will union two sets together.
the full accumulated data (result type)
partial data that can be added in