docs: Event<T> addCompletionLock(CompletionLockBase lock) {
          synchronized (this) {
              if (completionLocks == null) {
                  completionLocks = Collections.synchronizedSet(new HashSet<>());
              }
          }
          if (completionLocks.add(lock)) {
              openCount.incrementAndGet();
              lock.startTimer();
          }
          return (Event<T>) this;
      }