Java Thread Future getResults(Iterable> futures)

Here you can find the source of getResults(Iterable> futures)

Description

Checks results for exceptions by calling all Future#get() .

License

Open Source License

Exception

Parameter Description
IllegalStateException if any generated an exception

Declaration

public static <T> List<T> getResults(Iterable<Future<T>> futures) 

Method Source Code


//package com.java2s;
/*//from w ww. jav  a  2s .  c  o  m
 * Copyright (c) 2013, Cloudera, Inc. All Rights Reserved.
 *
 * Cloudera, Inc. licenses this file to you under the Apache License,
 * Version 2.0 (the "License"). You may not use this file except in
 * compliance with the License. You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * This software is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
 * CONDITIONS OF ANY KIND, either express or implied. See the License for
 * the specific language governing permissions and limitations under the
 * License.
 */

import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.ExecutionException;

import java.util.concurrent.Future;

public class Main {
    /**
     * Checks results for exceptions by calling all {@link Future#get()}.
     *
     * @throws IllegalStateException if any generated an exception
     */
    public static <T> List<T> getResults(Iterable<Future<T>> futures) {
        List<T> results = new ArrayList<>();
        for (Future<T> future : futures) {
            try {
                results.add(future.get());
            } catch (InterruptedException e) {
                throw new IllegalStateException(e);
            } catch (ExecutionException e) {
                throw new IllegalStateException(e.getCause());
            }
        }
        return results;
    }
}

Related

  1. getAllDone(Collection futures)
  2. getExceptionFromNewThread(String threadName, Runnable target)
  3. getFailedFuture(Throwable throwable)
  4. getFuture(Future future, String message)
  5. getMinIn(Map> responses)
  6. getSilently(Future future)
  7. getSysExeNameList()
  8. getUninterruptibly(Future future)
  9. invokeTask(String threadName, Callable callable)