public static <T> void submitTask(
    @NotNull ExecutorService executor,
    @NotNull BlockingQueue<Future<T>> queue,
    @NotNull Callable<T> task
  ) {
    Future<T> taskResult = Context.current()
      .wrap(executor)
      .submit(task);
    queue.add(taskResult);
  }
public static <T> void submitTask(
    @NotNull ExecutorService executor,
    @NotNull BlockingQueue<Future<T>> queue,
    @NotNull Callable<T> task
  )