Sau khoá này bạn sẽ
Kết quả học tập
- ✓Explain JMM happens-before, volatile, synchronized — predict race condition
- ✓Implement thread-safe class với 3 chiến lược: immutable, lock, atomic
- ✓Diagnose memory leak qua heap dump + jvisualvm
- ✓Compare blocking I/O vs NIO selector và choose đúng usecase
- ✓Predict hành vi GC khi tune -Xmx, -XX:+UseG1GC trên workload thực tế
Nội dung
3 modules
- 01
Concurrency cơ bản
Thread, Runnable, synchronized, volatile, ExecutorService, CompletableFuture, concurrent collections, virtual threads (Java 21). Hiểu memory model, happens-before, và vì sao concurrency khó hơn bạn nghĩ.
6 bài · 2.5h - 02
I/O & NIO
File I/O cổ điển (InputStream/Reader), NIO.2 (Path/Files), byte vs char stream, buffered I/O, serialization (Serializable caveats), đọc file với Stream API. Khi nào dùng API nào cho workload thực tế.
5 bài · 2h - 03
JVM Internals
Class loading, bytecode (javap), JIT compiler (C1/C2/tiered), memory layout (heap/metaspace/stack), garbage collector (G1/ZGC/Parallel), tools chẩn đoán (jstack/jmap/jstat/JFR). Hiểu máy bên dưới để debug khi production đi sai và optimize khi cần.
7 bài · 3.2h