Open mtchuyen opened 2 years ago
https://www.fullstory.com/blog/why-errgroup-withcontext-in-golang-server-handlers/
https://www.sohamkamani.com/golang/context-cancellation-and-values/
Để hiểu được Context, trước hết phải hiểu được 2 khái niệm
Đọc sơ lược ở đây: Ref3: Understanding the context package in golang
Ở 2 phần đầu (Goroutine & Channels) thể hiện các nhược điểm khi triển khai
main
waits for the goroutines to complete, you will need some way for the goroutines to tell it that they are done executing, that’s where channels
can help us.Và Context
giúp tăng cường cho app khi muốn dùng cả Goroutine & Channels.
Trong phần Example
của [Ref3] mô tả chi tiết 1 chương trình sử dụng context, có sử dụng context.WithTimeout
nên sẽ xem lại ví dụ này sau.
https://viblo.asia/p/golang-context-cancel-va-cach-su-dung-gGJ59rVDKX2
https://viblo.asia/p/golang-context-deadline-va-timeout-la-gi-XL6lAejrlek
https://betterprogramming.pub/how-and-when-to-use-context-in-go-b365ddf42ae2
Phần dịch khá sát với tài liệu gốc (https://go.dev/blog/context):
Context Goroutines and mutex error because sending a copy of counter to the anonymous
https://groups.google.com/g/golang-nuts/c/TK4v1pegaXg