Skip to content
Scala

Akka Actors (Pekko)

Concorrência por passagem de mensagens com o modelo de atores.

#actor#akka#concurrency

Code

scala
import akka.actor.{Actor, ActorSystem, Props}

class Counter extends Actor {
  var count = 0
  def receive: Receive = {
    case "inc"  => count += 1
    case "get"  => sender() ! count
    case "reset" => count = 0
  }
}

val system = ActorSystem("my-system")
val counter = system.actorOf(Props[Counter](), "counter")

counter ! "inc"
counter ! "inc"
counter ! "get"
// Use ask pattern for async reply:
// val f = counter ? "get"