From c044b2e8c9181507d391c59219d240353219ebef Mon Sep 17 00:00:00 2001 From: Philipp Haller Date: Thu, 2 Jul 2009 19:18:06 +0000 Subject: Switched to ForkJoinScheduler as default. --- src/actors/scala/actors/Actor.scala | 6 +++--- src/actors/scala/actors/ActorTask.scala | 4 ++-- src/actors/scala/actors/LightReaction.scala | 2 +- src/actors/scala/actors/Reaction.scala | 2 +- src/actors/scala/actors/Reactor.scala | 8 ++++---- src/actors/scala/actors/ReactorTask.scala | 4 ++-- src/actors/scala/actors/Scheduler.scala | 6 ++++-- 7 files changed, 17 insertions(+), 15 deletions(-) (limited to 'src/actors') diff --git a/src/actors/scala/actors/Actor.scala b/src/actors/scala/actors/Actor.scala index 11d8d63ac3..64e6e31eab 100644 --- a/src/actors/scala/actors/Actor.scala +++ b/src/actors/scala/actors/Actor.scala @@ -399,13 +399,13 @@ trait Actor extends AbstractActor with ReplyReactor with ReplyableActor { */ private var onTimeout: Option[TimerTask] = None - protected[this] override def makeReaction(block: => Unit): Runnable = { + protected[this] override def makeReaction(fun: () => Unit): Runnable = { if (isSuspended) new Runnable { - def run() { block } + def run() { fun() } } else - new ActorTask(this, { block }) + new ActorTask(this, fun) } protected[this] override def resumeReceiver(item: (Any, OutputChannel[Any]), onSameThread: Boolean) { diff --git a/src/actors/scala/actors/ActorTask.scala b/src/actors/scala/actors/ActorTask.scala index c780aad2ef..10bc270b61 100644 --- a/src/actors/scala/actors/ActorTask.scala +++ b/src/actors/scala/actors/ActorTask.scala @@ -24,10 +24,10 @@ class ActorTask extends Runnable { private var a: Actor = null private var fun: () => Unit = null - def this(a: Actor, block: => Unit) { + def this(a: Actor, fun: () => Unit) { this() this.a = a - this.fun = () => { block } + this.fun = fun } def run() { diff --git a/src/actors/scala/actors/LightReaction.scala b/src/actors/scala/actors/LightReaction.scala index ad58edf6d7..820f666c52 100644 --- a/src/actors/scala/actors/LightReaction.scala +++ b/src/actors/scala/actors/LightReaction.scala @@ -22,7 +22,7 @@ import java.lang.Runnable * * @author Philipp Haller */ -class LightReaction(a: Reactor, f: PartialFunction[Any, Unit], msg: Any) extends ReactorTask(a, { +class LightReaction(a: Reactor, f: PartialFunction[Any, Unit], msg: Any) extends ReactorTask(a, () => { if (f == null) a.act() else diff --git a/src/actors/scala/actors/Reaction.scala b/src/actors/scala/actors/Reaction.scala index 298e8d2fb1..fee697b6cb 100644 --- a/src/actors/scala/actors/Reaction.scala +++ b/src/actors/scala/actors/Reaction.scala @@ -31,7 +31,7 @@ private[actors] class KillActorException extends Throwable { * @version 0.9.10 * @author Philipp Haller */ -class Reaction(a: Actor, f: PartialFunction[Any, Unit], msg: Any) extends ActorTask(a, { +class Reaction(a: Actor, f: PartialFunction[Any, Unit], msg: Any) extends ActorTask(a, () => { if (f == null) a.act() else diff --git a/src/actors/scala/actors/Reactor.scala b/src/actors/scala/actors/Reactor.scala index d8c1ba3904..d99d91aac3 100644 --- a/src/actors/scala/actors/Reactor.scala +++ b/src/actors/scala/actors/Reactor.scala @@ -66,11 +66,11 @@ trait Reactor extends OutputChannel[Any] { if (waitingFor ne waitingForNone) { val savedWaitingFor = waitingFor waitingFor = waitingForNone - () => scheduler execute (makeReaction { + () => scheduler execute (makeReaction(() => { val startMbox = new MessageQueue synchronized { startMbox.append(msg, replyTo) } searchMailbox(startMbox, savedWaitingFor, true) - }) + })) } else { sendBuffer.enqueue((msg, replyTo)) () => { /* do nothing */ } @@ -79,8 +79,8 @@ trait Reactor extends OutputChannel[Any] { todo() } - protected[this] def makeReaction(block: => Unit): Runnable = - new ReactorTask(this, { block }) + protected[this] def makeReaction(fun: () => Unit): Runnable = + new ReactorTask(this, fun) protected[this] def resumeReceiver(item: (Any, OutputChannel[Any]), onSameThread: Boolean) { // assert continuation != null diff --git a/src/actors/scala/actors/ReactorTask.scala b/src/actors/scala/actors/ReactorTask.scala index 7445097812..d8d23d4e11 100644 --- a/src/actors/scala/actors/ReactorTask.scala +++ b/src/actors/scala/actors/ReactorTask.scala @@ -24,10 +24,10 @@ class ReactorTask extends Runnable { private var reactor: Reactor = null private var fun: () => Unit = null - def this(reactor: Reactor, block: => Unit) { + def this(reactor: Reactor, fun: () => Unit) { this() this.reactor = reactor - this.fun = () => { block } + this.fun = fun } def run() { diff --git a/src/actors/scala/actors/Scheduler.scala b/src/actors/scala/actors/Scheduler.scala index abda6d329e..bd083691e0 100644 --- a/src/actors/scala/actors/Scheduler.scala +++ b/src/actors/scala/actors/Scheduler.scala @@ -25,6 +25,7 @@ object Scheduler extends DelegatingScheduler { Debug.info("initializing "+this+"...") def makeNewScheduler: IScheduler = { +/* val workQueue = new LinkedBlockingQueue[Runnable](100000) val threadPool = new ThreadPoolExecutor(ThreadPoolConfig.corePoolSize, ThreadPoolConfig.maxPoolSize, @@ -32,8 +33,9 @@ object Scheduler extends DelegatingScheduler { TimeUnit.MILLISECONDS, workQueue) val s = new SimpleExecutorScheduler(threadPool, true) - //val s = new ForkJoinScheduler - //Debug.info(this+": starting new "+s) +*/ + val s = new ForkJoinScheduler + Debug.info(this+": starting new "+s+" ["+s.getClass+"]") s.start() s } -- cgit v1.2.3