concurrency: To block, or not to block?
The CompletableFuture class added in Java 8 gives you new ways to handle the completion of asynchronous processing, including nonblocking ways to compose and combine events. This article helps you understand the differences between blocking and nonblocking approaches to handling completions and gives you some reasons to prefer nonblocking approaches.
|Articles||22 Jul 2014|
concurrency: Building actor applications with Akka
Actor applications require a different style of programming from the linear approach that is used for single-threaded applications. Go deeper into structuring systems in terms of actors and messages from Scala code, using the Akka toolkit and runtime.
|Articles||12 Aug 2015|
concurrency: Acting asynchronously with Akka
The actor model, a long-established approach to concurrent programming, gives you an easy way to build applications for high concurrency and scalability. Learn about the actor model and start working in Scala or Java with the Akka implementation of the model.
|Articles||08 Apr 2015|
|JVM concurrency: Java and Scala concurrency basics
The Java platform provides excellent support for concurrent programming in all JVM-based languages. Scala extends the concurrency support in the Java language with even more ways to share work among processors and coordinate the results. This first article in a new series on JVM concurrency covers the state of the art in concurrent programming in Java 7 and introduces some of the Scala enhancements. The article also helps prepare the way for understanding concurrency features in Java 8.
|Articles||25 Mar 2014|
concurrency: Java 8 concurrency basics
Java 8 incorporates new language features and added classes that give you easier ways to construct programs, including concurrent programs. Learn about new, powerful parallel-processing support in the language made possible by Java 8 extensions, including CompletableFuture and streams. You'll recognize similarities between these new features and some of the Scala capabilities that you explored in the first article of this series.
|Articles||08 Apr 2014|
concurrency: Asynchronous event handling in Scala
Scala Future and Promise classes give you powerful ways to handle asynchronous processing, including nonblocking ways to organize and sequence events. The async / await constructs, implemented as a macro, make it even easier to write nonblocking event handling in Scala. This tutorial shows you the basic Future and Promise techniques in action, then demonstrates how async / await can convert what looks like simple blocking code to nonblocking execution.
|Articles||02 Sep 2014|