Khi nào khối finally không được thực thi trong Java?

{{FormatNumbertoThousand(model.total_like)}} lượt thích
490 lượt xem
Java master

Thông thường, finally sẽ được gọi sau khi thực hiện các khối mã try hoặc catch.

Các lần finally không được gọi là:

  1. Nếu bạn gọi System.exit().
  2. Nếu JVM gặp sự cố trước.
  3. Nếu JVM đạt đến một vòng lặp vô hạn (hoặc một số câu lệnh không ngừng, hoặc không kết thúc khác) trong khối try hoặc catch.
  4. Nếu hệ điều hành buộc phải chấm dứt JVM process; ví dụ: kill -9 <pid> trên UNIX.
  5. Nếu hệ thống máy chủ bị chết; ví dụ: mất điện, lỗi phần cứng, hệ điều hành bị lỗi, v.v.
  6. Nếu khối finally được thực thi bởi một thread daemon và tất cả các thread non-daemon khác kết thúc trước khi finally được gọi.
{{login.error}}