Câu hỏi phỏng vấn Java
Câu hỏi

Synchronized trong Java là gì?

Câu trả lời

Trong Java, từ khóa synchronized được sử dụng để kiểm soát việc truy cập đồng thời vào một phần mã quan trọng từ nhiều luồng. Khi một phương thức hoặc một khối mã được đánh dấu là synchronized, nó đảm bảo rằng chỉ một luồng tại một thời điểm có thể thực thi phương thức hoặc khối mã đó. Điều này giúp ngăn chặn tình trạng xung đột dữ liệu và đảm bảo tính nhất quán của dữ liệu khi được truy cập bởi nhiều luồng.

Cách hoạt động của Synchronized

  • Synchronized Methods: Khi một phương thức được đánh dấu là synchronized, luồng thực thi phải có được khóa của đối tượng chứa phương thức đó trước khi thực thi phương thức. Nếu một luồng khác đã giữ khóa đó, luồng đang cố gắng truy cập phương thức sẽ phải chờ cho đến khi khóa được giải phóng.
  • Synchronized Blocks: Java cũng cho phép đồng bộ hóa một khối mã cụ thể bên trong một phương thức thay vì toàn bộ phương thức. Điều này cung cấp sự linh hoạt hơn trong việc quản lý việc truy cập đồng thời, cho phép các luồng khác truy cập những phần không đồng bộ của phương thức. Khối `synchroni...
middle

middle

Gợi ý câu hỏi phỏng vấn

middle

Design pattern nào trong thư viện JDK của Java?

middle

Bạn có thể truy cập biến non-static trong static context không?

middle

Trong Java có các kiểu dữ liệu nào? AutoboxingUnboxing là gì?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào