Interface RDoubleAdder

All Superinterfaces:
RDestroyable, RExpirable, RExpirableAsync, RObject, RObjectAsync
All Known Implementing Classes:
RedissonDoubleAdder

public interface RDoubleAdder extends RExpirable, RDestroyable
Distributed implementation of DoubleAdder

Internal state maintained on client side.

Author:
Nikita Koksharov
  • Method Details

    • add

      void add(double x)
      Adds value
      Parameters:
      x - - value
    • increment

      void increment()
      Increments value
    • decrement

      void decrement()
      Decrements value
    • sum

      double sum()
      Accumulates sum across all RDoubleAdder instances
      Returns:
      accumulated sum
    • reset

      void reset()
      Resets value across all RDoubleAdder instances
    • sumAsync

      RFuture<Double> sumAsync()
      Accumulates sum across all RDoubleAdder instances
      Returns:
      accumulated sum
    • sumAsync

      RFuture<Double> sumAsync(long timeout, TimeUnit timeUnit)
      Accumulates sum across all RDoubleAdder instances within defined timeout.
      Parameters:
      timeout - for accumulation
      timeUnit - for timeout
      Returns:
      accumulated sum
    • resetAsync

      RFuture<Void> resetAsync()
      Resets value across all RDoubleAdder instances
      Returns:
      void
    • resetAsync

      RFuture<Void> resetAsync(long timeout, TimeUnit timeUnit)
      Resets value across all RDoubleAdder instances within defined timeout.
      Parameters:
      timeout - for reset
      timeUnit - for timeout
      Returns:
      void