code: public T getMean() {
          Lock lock = this.lock.readLock();
          lock.lock();
          try {
              return this.mean;
          } finally {
              lock.unlock();
          }
      }
docs: Return the approximate mean (average) value represented as an instance of the operand type. Note that this may truncate if
  the operand type is not able to have the required precision. For the accurate mean, see {@link #getMeanValue() }.
  
  @return the mean (average), or 0.0 if the {@link #getCount() count} is 0