Book Image

Learning Concurrent Programming in Scala

By : Aleksandar Prokopec
5 (1)
Book Image

Learning Concurrent Programming in Scala

5 (1)
By: Aleksandar Prokopec

Overview of this book

Table of Contents (18 chapters)
Learning Concurrent Programming in Scala
About the Author
About the Reviewers


In the following exercises, you will need to implement different Observable objects. The exercises show different use cases for Observable objects, and contrast the different ways of creating Observable objects. Also, some of the exercises introduce new reactive programming abstractions, such as reactive maps and reactive priority queues.

  1. Implement a custom Observable[Thread] object that emits an event when it detects that a thread was started. The implementation is allowed to miss some of the events.

  2. Implement an Observable object that emits an event every 5 seconds and every 12 seconds, but not if the elapsed time is a multiple of 30 seconds. Use functional combinators on Observable objects.

  3. Use the randomQuote method from this section in order to create an Observable object with the moving average of the quote lengths. Each time a new quote arrives, a new average value should be emitted.

  4. Implement the reactive signal abstraction, represented with the Signal[T] type. The Signal...