akka-core now compiles
This commit is contained in:
parent
803838d315
commit
22116b922a
52 changed files with 755 additions and 1100 deletions
|
|
@ -7,7 +7,7 @@ package se.scalablesolutions.akka.stm
|
|||
import java.util.concurrent.atomic.AtomicReference
|
||||
import java.util.concurrent.{ConcurrentLinkedQueue, LinkedBlockingQueue}
|
||||
|
||||
import se.scalablesolutions.akka.actor.Actor
|
||||
import se.scalablesolutions.akka.actor.{Actor, ActorID}
|
||||
import se.scalablesolutions.akka.dispatch.CompletableFuture
|
||||
|
||||
/**
|
||||
|
|
@ -26,7 +26,7 @@ import se.scalablesolutions.akka.actor.Actor
|
|||
import se.scalablesolutions.akka.dispatch.CompletableFuture
|
||||
|
||||
def thread(body: => Unit) = {
|
||||
val thread = new IsolatedEventBasedThread(body).start
|
||||
val thread = new ActorID(() => new IsolatedEventBasedThread(body)).start
|
||||
thread ! Start
|
||||
thread
|
||||
}
|
||||
|
|
@ -60,7 +60,7 @@ import se.scalablesolutions.akka.dispatch.CompletableFuture
|
|||
private case object Get extends DataFlowVariableMessage
|
||||
|
||||
private val value = new AtomicReference[Option[T]](None)
|
||||
private val blockedReaders = new ConcurrentLinkedQueue[Actor]
|
||||
private val blockedReaders = new ConcurrentLinkedQueue[ActorID]
|
||||
|
||||
private class In[T <: Any](dataFlow: DataFlowVariable[T]) extends Actor {
|
||||
timeout = TIME_OUT
|
||||
|
|
@ -97,7 +97,7 @@ import se.scalablesolutions.akka.dispatch.CompletableFuture
|
|||
}
|
||||
}
|
||||
|
||||
private[this] val in = new In(this)
|
||||
private[this] val in = new ActorID(() => new In(this))
|
||||
|
||||
def <<(ref: DataFlowVariable[T]) = in ! Set(ref())
|
||||
|
||||
|
|
@ -107,7 +107,7 @@ import se.scalablesolutions.akka.dispatch.CompletableFuture
|
|||
val ref = value.get
|
||||
if (ref.isDefined) ref.get
|
||||
else {
|
||||
val out = new Out(this)
|
||||
val out = new ActorID(() => new Out(this))
|
||||
blockedReaders.offer(out)
|
||||
val result = out !! Get
|
||||
out ! Exit
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue