Processes and Threads
Learning results:
- Develop multi-process applications recognizing and applying parallel programming principles.
- Develop applications composed of several threads of execution by analyzing and applying specific libraries of the programming language.
References
- Java Concurrency Terminology
- Java Language Specification, capítol 17: Threads and Locks
- The Java tutorials: Concurrency
- Java Concurrency and Multithreading Tutorial
- Threads (Java in a nutshell)
- How to work with wait(), notify() and notifyAll() in Java?
- Thread Communication using wait/notify
- The evolution of the producer / consumer problem in Java
- Java CompletableFuture Tutorial with Examples
- Concurrency in JavaFX 8
- Liveness (The Java Tutorials, Oracle)
- Liveness (Wikipedia)
- The Deadlock Empire
- Thread Safety (6.005: Software Construction)
- What is Thread Dump and How to Analyze them?
Reactive systems programming:
- Reactive Programming: Why It Matters
- Reactive programming vs Reactive systems
- RxJava Wiki
- RxJava Backpressure
- Reactive Manifesto (Glossary)
- RxJava and Reactive Programming
- Understanding RxJava Basics
- The Complete RxJava Roadmap: From Novice to Advanced
- Poor Man's Actors in Java
- Designing Reactive Systems (llibre de Hugh McKee)
- Reactive in practice: A complete guide to event-driven systems development in Java
- A reactive Java landscape
- Reactive Programming with Reactor 3