Useful Links
Computer Science
Programming
By Language
Scala Programming
1. Introduction to Scala
2. Scala Language Fundamentals
3. Object-Oriented Programming in Scala
4. Functional Programming in Scala
5. The Scala Collections Library
6. Advanced Language Features
7. Concurrency and Parallelism
8. Tooling and Ecosystem
9. Advanced Topics
10. Practical Applications
11. Best Practices and Idioms
Concurrency and Parallelism
Introduction to Concurrency on the JVM
Threads and Thread Safety
Synchronization Basics
Memory Model Considerations
Scala Futures and Promises
Future for Asynchronous Computations
Creating Futures
Composing Futures
map
flatMap
for Comprehensions
Execution Contexts
Global Execution Context
Custom Execution Contexts
Error Handling with recover and recoverWith
Combining Multiple Futures
Promise to Complete a Future
Creating and Completing Promises
Use Cases for Promises
Blocking and Non-Blocking Operations
Future Performance Considerations
Parallel Collections
The par Method
Performance Considerations
When to Use Parallel Collections
Configuring Parallelism
Introduction to the Akka Toolkit
The Actor Model
Principles of Actor-Based Concurrency
Message Passing
Defining Actors
Actor Classes
Actor Lifecycle
Actor State Management
Sending and Receiving Messages
Message Passing Syntax
Handling Messages
Message Types
Actor Systems and Hierarchies
Creating Actor Systems
Actor Supervision and Fault Tolerance
Actor References
Previous
6. Advanced Language Features
Go to top
Next
8. Tooling and Ecosystem