Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package org.gridgain.examples.compute;
- import java.util.ArrayList;
- import java.util.Collection;
- import org.gridgain.grid.Grid;
- import org.gridgain.grid.GridException;
- import org.gridgain.grid.GridFuture;
- import org.gridgain.grid.GridGain;
- import org.gridgain.grid.lang.GridCallable;
- public class ComputeSleepExample {
- public static void main(String[] args) throws Exception {
- // start gridgain node & invoke sleep jobs on it
- try (Grid grid = GridGain.start("examples/config/example-compute.xml")) {
- System.out.println(">>> Sleep example started.");
- jobs(grid, args[0], args[1]);
- System.out.println("<<< Jobs done");
- }
- }
- public static void jobs(Grid g, String count, String wait) throws GridException {
- GridFuture<Collection<Long>> rv = g.compute().call(jobs(Integer.parseInt(count), Integer.parseInt(wait)));
- System.out.println("--- waiting");
- rv.get();
- }
- private static Collection<GridCallable<Long>> jobs(final int size, final int wait) {
- Collection<GridCallable<Long>> clos = new ArrayList<>(size);
- for (int i = 0; i < size; i++) {
- clos.add(new GridCallable<Long>() {
- private static final long serialVersionUID = 1L;
- @Override
- public Long call() throws Exception {
- sleep(wait);
- System.out.println("done");
- return 33L;
- }
- });
- }
- return clos;
- }
- private static void sleep(long pause) {
- try {
- Thread.sleep(pause);
- } catch (InterruptedException e) {
- // Thread.currentThread().interrupt();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment