<dependency>
<groupId>org.scalaz</groupId>
<artifactId>scalaz-concurrent</artifactId>
<version>7.3.3</version>
</dependency>
import scalaz.concurrent.Task;
import scalaz.concurrent.Strategy;
import java.util.concurrent.TimeUnit;
public class ConcurrentExample {
public static void main(String[] args) {
Task<Integer> task = Task.delay(() -> compute());
Integer result = task.run();
}
private static int compute() {
try {
TimeUnit.SECONDS.sleep(5);
} catch (InterruptedException e) {
e.printStackTrace();
}
return 42;
}
}