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

So sánh phương thức sleep()wait() trong Java?

Câu trả lời

Trong Java, sleep()wait() là hai phương thức được sử dụng để tạm dừng thực thi của luồng, nhưng chúng có mục đích và cách sử dụng khác nhau:

Phương thức sleep()

  • sleep() là một phương thức tĩnh của lớp Thread được sử dụng để tạm dừng thực thi của luồng hiện tại cho một khoảng thời gian cụ thể (được chỉ định bằng mili giây).
  • Khi một luồng gọi sleep(), luồng đó chuyển sang trạng thái "TIMED_WAITING" và không giữ bất kỳ khóa nào mà nó có; sau khi thời gian chờ kết thúc, luồng sẽ trở lại trạng thái "RUNNABLE" và chờ lên lịch thực thi.
  • sleep() thường được sử dụng để tạm dừng thực thi trong một khoảng thời gian cố định mà không ảnh hưởng đến các luồng khác hoặc đồng bộ hóa.

Phương thức wait()

  • wait() là một phương thức của lớp Object được sử dụng trong đồng bộ hóa. Một luồng chỉ có thể gọi wait() trên một đối tượng khi luồng đó giữ khóa của đối tượng đó (nghĩa là trong một khối synchronized).
  • Khi một luồng gọi wait() trên một đối tượng, luồng đó sẽ giải phóng khóa của đối tượng và chuyển sang trạng thái "WAITING" hoặc "TIMED_WAITING" (nếu một thời gian chờ được ...
middle

middle

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

middle

Nếu một đối tượng được gán thành null, Garbage Collector trong Java có giải phóng ngay bộ nhớ được giữ bởi đối tượng đó không?

middle

Có gì sai với việc khởi tạo Double Brace trong Java?

middle

Trong Java lớp exception có các lớp con nào?

Bình luận

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

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