docs: @Override
      public final Object[] toArray() {
          this.readLock.lock();
          try {
              return this.toArray(new Object[this.size]);
          } finally {
              this.readLock.unlock();
          }
      }