#concurrency
4 bài viết về chủ đề này
Blackboards — Khi Code Nói Chuyện Qua Một Cái Bảng Đen (Pragmatic Programmer #36)
Topic 36 'Blackboards' từ 'The Pragmatic Programmer' dạy chúng ta về mô hình blackboard — nơi các module trao đổi dữ liệu ẩn danh và bất đồng bộ, giống như các thám tử cùng phá án trên một cái bảng đen.
Shared State Is Incorrect State — Trạng thái dùng chung là trạng thái sai (Pragmatic Programmer #34)
Topic 34 từ cuốn The Pragmatic Programmer: Shared State Is Incorrect State — giải thích về race condition, nonatomic updates, semaphore/mutex, và cách tránh shared state trong lập trình đồng thời.
Goroutines & Channels — Sức mạnh concurrency của Go không chỉ là 'chạy song song'
Goroutines và channels là hai thứ làm nên tên tuổi của Go. Một góc nhìn thực tế về concurrency trong Go — từ goroutine leak, channel blocking, tới những pattern áp dụng trong công việc hằng ngày.
Context trong Go — thứ mà dev Go nào cũng cần nắm
Context package trong Go có vẻ đơn giản nhưng nếu xài sai là đau lắm. Mình kể ít chuyện về timeout, cancel, và mấy cái bẫy mà dev hay mắc.