Processos i fils
- Concurrència: concurrència i paral·lelisme, processos i fils, i els models de concurrència.
- Estat compartit: el model on tots els fils comparteixen dades, amb els reptes d’accés segur, coordinació i vitalitat.
- Java: com implementa Java la concurrència, amb la JVM, la memòria i els fils.
- Fils: estats d’un fil, com crear-lo i executar-lo, i fils de plataforma i virtuals.
- Tècniques de disseny: les quatre tècniques per evitar problemes amb memòria compartida, per ordre de preferència.
- Join, interrupt i volatile: esperar la fi d’un fil, aturar-lo des de fora i la visibilitat de l’estat compartit.
- Sincronització: monitors, wait i notify, i ReentrantLock.
- Llibreria Java concurrent:
java.util.concurrent, amb executors, tasques amb resultat, cues, sincronitzadors i col·leccions concurrents.
- Pas de missatges: comunicació sense estat compartit: models síncron i asíncron, cues i sistemes reactius.
Referències
- 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
- Task (JavaFX 25): concurrència a la interfície
- 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?
- Concurrency: A Primer
Programació i sistemes reactius: