
Channels
Channels, buffered và unbuffered, close, select, range trên channels, nil channels
1Channel trong Go là gì?
Channel trong Go là gì?
Câu trả lời
Channel là một kiểu dữ liệu cho phép giao tiếp và đồng bộ hóa giữa các goroutine. Nó hoạt động như một đường dẫn có kiểu, cho phép gửi và nhận giá trị theo cách thread-safe. Hãy dùng channel để chia sẻ dữ liệu giữa các goroutine thay vì chia sẻ bộ nhớ trực tiếp.
2Làm thế nào để tạo một unbuffered channel kiểu integer trong Go?
Làm thế nào để tạo một unbuffered channel kiểu integer trong Go?
Câu trả lời
Một unbuffered channel được tạo bằng make(chan T) mà không chỉ định dung lượng. Nó chặn bên gửi cho đến khi bên nhận sẵn sàng, đảm bảo sự đồng bộ hóa nghiêm ngặt. Hãy dùng unbuffered channel cho các giao tiếp one-to-one cần đồng bộ hóa rõ ràng.
3Sự khác biệt chính giữa buffered và unbuffered channel là gì?
Sự khác biệt chính giữa buffered và unbuffered channel là gì?
Câu trả lời
Một unbuffered channel chặn bên gửi cho đến khi bên nhận sẵn sàng (đồng bộ hóa nghiêm ngặt), trong khi một buffered channel có thể lưu trữ giá trị tới dung lượng của nó trước khi chặn. Buffered channel tách rời các goroutine và cải thiện hiệu năng trong một số trường hợp, nhưng có thể che giấu các vấn đề về tương tranh. Dùng unbuffered để đồng bộ hóa, buffered để tăng thông lượng.
Làm thế nào để tạo một buffered channel với dung lượng 10 phần tử?
Làm thế nào để gửi một giá trị vào channel?
+19 câu hỏi phỏng vấn
Các chủ đề phỏng vấn Go khác
Kiến thức cơ bản về Go
Cấu trúc dữ liệu Go
Interface trong Go
Xử lý lỗi
Cơ bản về Goroutine
Go Modules
Máy chủ HTTP
HTTP Client
Mã hóa JSON
Database/SQL
Gói context
Testing
Các mẫu Concurrency
Primitive đồng bộ hóa
Framework web Go
Thiết kế API REST
gRPC
Reflection
Quản lý bộ nhớ
Tối ưu hóa hiệu năng
Generics
Go Design Patterns
Microservices
Bảo mật và Xác thực
Docker & Containerization
Kubernetes Basics
Go Nâng cao
Phát triển CLI
Nắm vững Go cho lần phỏng vấn tiếp theo
Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.
Bắt đầu miễn phí