11: ♥ Coding Scala Way – Actors with Akka – part 1

We already saw in Java: Producer and Consumer Java Multi-threading code. This extends the tutorial “Simple Akka tutorial in Scala step by step” for setting up the environment with right plugins and libraries with Eclipse & Maven.

The Akka Actors sending & receiving messages

Akka Actors conceptually each have their own light-weight thread. Actors are represented to the outside using ActorRefs, which are objects that can be passed around freely and without restriction. The “!” method is in the “akka.actor.ActorRef” trait.

Let’s look at a very simple example of sending a message to an actor.

Output:

As you can see there are two threads involved. The JVM “main” thread, the consuming actor thread “producer-consumer-akka.actor.default-dispatcher-2 “.

!” is a method that sends (tells) a message to a consumer. Once the message has been delivered to the actor, the actor processes the message by invoking its receive method.

Alternatively, use “tell” method

The “tell” method is in the “akka.actor.ScalaActorRef” trait.

Here is the Scala code in action.

The messages don’t have to be of type String

Output:

What if you want to spawn a new producer thread instead of the default JVM main thread

Output

Shutting down or stopping Akka system

Instead of System.exit(1), you can shutdown with

In order to close an actor, you can do

share...Share on LinkedIn4Share on Google+0Share on Facebook0
The following two tabs change content below.
Arulkumaran Kumaraswamipillai
Mechanical Engineer to freelance Java developer within 3 years. Freelancing since 2003 for the major banks, telecoms, retail & government organizations. Attended 150+ Java job interviews, and most often got 3-6 job offers to choose from. Published Java/JEE books via Amazon.com in 2005, and sold 35K+ copies. Books are outdated and replaced with this online Java training. join my LinkedIn group.
Arulkumaran Kumaraswamipillai

Mechanical Engineer to freelance Java developer within 3 years. Freelancing since 2003 for the major banks, telecoms, retail & government organizations. Attended 150+ Java job interviews, and most often got 3-6 job offers to choose from. Published Java/JEE books via Amazon.com in 2005, and sold 35K+ copies. Books are outdated and replaced with this online Java training. join my LinkedIn group.

Posted in Scala way of coding

800+ Java Interview Q&As – ♥ Free | ♦ FAQs

open all | close all

Pressed for time? 200+ Quick Prep

open all | close all

16 Java Key Areas to be a top-notch

open all | close all

100+ Java Tutorials – Step by step

open all | close all

100+ Java Coding Exercises

open all | close all

How good are your

open all | close all