Java Thread Future cancelNullableFutures(boolean mayInterruptIfRunning, Iterable> futures)

Here you can find the source of cancelNullableFutures(boolean mayInterruptIfRunning, Iterable> futures)

Description

Cancels all Futures in futures with the mayInterruptIfRunning argument.

License

Open Source License

Parameter

Parameter Description
mayInterruptIfRunning argument for Future#cancel(boolean)
futures the Futures to cancel, may have null elements

Declaration

public static void cancelNullableFutures(boolean mayInterruptIfRunning, Iterable<? extends Future<?>> futures) 

Method Source Code

//package com.java2s;
/* Copyright (C) 2013-2014 Ian Teune <ian.teune@gmail.com>
 * /*  ww w  .j av  a 2 s.co  m*/
 * Permission is hereby granted, free of charge, to any person obtaining
 * a copy of this software and associated documentation files (the
 * "Software"), to deal in the Software without restriction, including
 * without limitation the rights to use, copy, modify, merge, publish,
 * distribute, sublicense, and/or sell copies of the Software, and to
 * permit persons to whom the Software is furnished to do so, subject to
 * the following conditions:
 * 
 * The above copyright notice and this permission notice shall be
 * included in all copies or substantial portions of the Software.
 * 
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
 * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
 * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 */

import java.util.concurrent.Future;

public class Main {
    /**
     * Cancels all Futures in {@code futures} with the
     * {@code mayInterruptIfRunning} argument. null Futures in {@code futures}
     * are ignored and will not cause a NPE
     *
     * @param mayInterruptIfRunning argument for {@link Future#cancel(boolean)}
     * @param futures the Futures to cancel, may have null elements
     */
    public static void cancelNullableFutures(boolean mayInterruptIfRunning, Future<?>... futures) {
        for (Future<?> f : futures) {
            if (f != null) {
                f.cancel(mayInterruptIfRunning);
            }
        }
    }

    /**
     * Cancels all Futures in {@code futures} with the
     * {@code mayInterruptIfRunning} argument. null Futures in {@code futures}
     * are ignored and will not cause a NPE
     *
     * @param mayInterruptIfRunning argument for {@link Future#cancel(boolean)}
     * @param futures the Futures to cancel, may have null elements
     */
    public static void cancelNullableFutures(boolean mayInterruptIfRunning, Iterable<? extends Future<?>> futures) {
        for (Future<?> f : futures) {
            if (f != null) {
                f.cancel(mayInterruptIfRunning);
            }
        }
    }
}

Related

  1. callback(final CountDownLatch latch)
  2. cancel(final Future future)
  3. cancel(Future toCancel)
  4. cancel(List> futures)
  5. cancelScheduledFuture(ScheduledFuture scheduledFuture)
  6. checkTimeThresholds(long expectedMin, long expectedMax, long expectedOverhead, long start, Map> responses)
  7. commit(Object tx)
  8. convertFuture(Future future)