Не могли бы вы, ребята, показать пример дросселирования сообщений в Акке?Как отключить сообщения в Akka (2.1.2)?
Вот мой код
object Program {
def main(args: Array[String]) {
val system = ActorSystem()
val actor: ActorRef = system.actorOf(Props[HelloActor].withDispatcher("akka.actor.my-thread-pool-dispatcher"))
val zzz : Function0[Unit] =() => {
println(System.currentTimeMillis())
Thread.sleep(5000)
}
var i: Int = 0
while (i < 100) {
actor ! zzz
i += 1
}
println("DONE")
// system.shutdown()
}
}
class HelloActor extends Actor {
def receive = {
case func : Function0[Unit] => func()
}
}
и вот мой конфиг
akka {
actor {
my-thread-pool-dispatcher {
type = Dispatcher
executor = "thread-pool-executor"
thread-pool-executor {
task-queue-type = "array"
task-queue-size = 4
}
}
}
}
Но когда я запускаю его это, кажется, однопоточный, где, как я ожидаю, 4 сообщения, которые будут обрабатываться на в то же время.
Что мне здесь не хватает?