aboutsummaryrefslogtreecommitdiffstats
path: root/AndroidAsync/src/com/koushikdutta/async/future/FutureThread.java
diff options
context:
space:
mode:
Diffstat (limited to 'AndroidAsync/src/com/koushikdutta/async/future/FutureThread.java')
-rw-r--r--AndroidAsync/src/com/koushikdutta/async/future/FutureThread.java16
1 files changed, 16 insertions, 0 deletions
diff --git a/AndroidAsync/src/com/koushikdutta/async/future/FutureThread.java b/AndroidAsync/src/com/koushikdutta/async/future/FutureThread.java
index 37091e6..5f527e0 100644
--- a/AndroidAsync/src/com/koushikdutta/async/future/FutureThread.java
+++ b/AndroidAsync/src/com/koushikdutta/async/future/FutureThread.java
@@ -1,5 +1,7 @@
package com.koushikdutta.async.future;
+import java.util.concurrent.ExecutorService;
+
/**
* Created by koush on 12/22/13.
*/
@@ -8,6 +10,20 @@ public class FutureThread<T> extends SimpleFuture<T> {
this(runnable, "FutureThread");
}
+ public FutureThread(final ExecutorService pool, final FutureRunnable<T> runnable) {
+ pool.submit(new Runnable() {
+ @Override
+ public void run() {
+ try {
+ setComplete(runnable.run());
+ }
+ catch (Exception e) {
+ setComplete(e);
+ }
+ }
+ });
+ }
+
public FutureThread(final FutureRunnable<T> runnable, String name) {
new Thread(new Runnable() {
@Override