diff --git a/akka-actor/src/main/scala/akka/dispatch/ThreadBasedDispatcher.scala b/akka-actor/src/main/scala/akka/dispatch/ThreadBasedDispatcher.scala index a8dfcf5860..1435884aee 100644 --- a/akka-actor/src/main/scala/akka/dispatch/ThreadBasedDispatcher.scala +++ b/akka-actor/src/main/scala/akka/dispatch/ThreadBasedDispatcher.scala @@ -9,7 +9,7 @@ import akka.config.Config.config import akka.util.Duration import java.util.Queue -import java.util.concurrent.{ConcurrentLinkedQueue, BlockingQueue, TimeUnit, LinkedBlockingQueue} +import java.util.concurrent.{TimeUnit, SynchronousQueue} import akka.actor import java.util.concurrent.atomic.AtomicReference @@ -47,6 +47,11 @@ class ThreadBasedDispatcher(_actor: ActorRef, _mailboxType: MailboxType) } object ThreadBasedDispatcher { - val oneThread: ThreadPoolConfig = ThreadPoolConfig(allowCorePoolTimeout = true, corePoolSize = 1, maxPoolSize = 1) + val oneThread: ThreadPoolConfig = + ThreadPoolConfig( + allowCorePoolTimeout = true, + corePoolSize = 1, + maxPoolSize = 1, + queueFactory = () => new SynchronousQueue[Runnable]) }