Interface RAtomicDoubleReactive

All Superinterfaces:
RExpirableReactive, RObjectReactive

public interface RAtomicDoubleReactive extends RExpirableReactive
Reactive interface for AtomicDouble object
Author:
Nikita Koksharov
  • Method Details

    • compareAndSet

      reactor.core.publisher.Mono<Boolean> compareAndSet(double expect, double update)
      Atomically sets the value to the given updated value only if the current value == the expected value.
      Parameters:
      expect - the expected value
      update - the new value
      Returns:
      true if successful; or false if the actual value was not equal to the expected value.
    • addAndGet

      reactor.core.publisher.Mono<Double> addAndGet(double delta)
      Atomically adds the given value to the current value.
      Parameters:
      delta - the value to add
      Returns:
      the updated value
    • decrementAndGet

      reactor.core.publisher.Mono<Double> decrementAndGet()
      Atomically decrements the current value by one.
      Returns:
      the updated value
    • get

      reactor.core.publisher.Mono<Double> get()
      Returns current value.
      Returns:
      current value
    • getAndDelete

      reactor.core.publisher.Mono<Double> getAndDelete()
      Returns and deletes object
      Returns:
      the current value
    • getAndAdd

      reactor.core.publisher.Mono<Double> getAndAdd(double delta)
      Atomically adds the given value to the current value.
      Parameters:
      delta - the value to add
      Returns:
      the updated value
    • getAndSet

      reactor.core.publisher.Mono<Double> getAndSet(double newValue)
      Atomically sets the given value and returns the old value.
      Parameters:
      newValue - the new value
      Returns:
      the old value
    • incrementAndGet

      reactor.core.publisher.Mono<Double> incrementAndGet()
      Atomically increments the current value by one.
      Returns:
      the updated value
    • getAndIncrement

      reactor.core.publisher.Mono<Double> getAndIncrement()
      Atomically increments the current value by one.
      Returns:
      the old value
    • getAndDecrement

      reactor.core.publisher.Mono<Double> getAndDecrement()
      Atomically decrements by one the current value.
      Returns:
      the previous value
    • set

      reactor.core.publisher.Mono<Void> set(double newValue)
      Atomically sets the given value.
      Parameters:
      newValue - the new value
      Returns:
      void