code: @Nonnull
      public static List<TtlRunnable> gets(@Nullable Collection<? extends Runnable> tasks, boolean releaseTtlValueReferenceAfterRun) {
          return gets(tasks, releaseTtlValueReferenceAfterRun, false);
      }
docs: wrap input {@link Runnable} Collection to {@link TtlRunnable} Collection.
  
  @param tasks                            task to be wrapped. if input is {@code null}, return {@code null}.
  @param releaseTtlValueReferenceAfterRun release TTL value reference after run, avoid memory leak even if {@link TtlRunnable} is referred.
  @return wrapped tasks
  @throws IllegalStateException when input is {@link TtlRunnable} already.