src/Pure/Concurrent/simple_thread.scala
changeset 48355 6b36da29a0bf
parent 45673 cd41e3903fbf
child 49471 97964515a676
--- a/src/Pure/Concurrent/simple_thread.scala	Thu Jul 19 20:39:49 2012 +0200
+++ b/src/Pure/Concurrent/simple_thread.scala	Thu Jul 19 20:49:17 2012 +0200
@@ -30,11 +30,11 @@
 
   /* future result via thread */
 
-  def future[A](name: String = "", daemon: Boolean = false)(body: => A): Future[A] =
+  def future[A](name: String = "", daemon: Boolean = false)(body: => A): (Thread, Future[A]) =
   {
     val result = Future.promise[A]
-    fork(name, daemon) { result.fulfill_result(Exn.capture(body)) }
-    result
+    val thread = fork(name, daemon) { result.fulfill_result(Exn.capture(body)) }
+    (thread, result)
   }