Một số người có thể giải thích AtomicLong được sử dụng để làm gì không? Ví dụ, sự khác biệt trong các câu dưới đây là gì?AtomicLong trong Java được sử dụng để làm gì?
private Long transactionId;
private AtomicLong transactionId;
Một số người có thể giải thích AtomicLong được sử dụng để làm gì không? Ví dụ, sự khác biệt trong các câu dưới đây là gì?AtomicLong trong Java được sử dụng để làm gì?
private Long transactionId;
private AtomicLong transactionId;
Có đáng kể khác biệt giữa hai đối tượng này, mặc dù kết quả ròng là như nhau, họ có chắc chắn rất khác nhau và sử dụng trong những trường hợp rất khác nhau.
Bạn sử dụng một đối tượng cơ bản Long
khi:
Bạn sử dụng một AtomicLong
khi:
Long
bởi bản thân không cho phép chủ đề khả năng tương thích kể từ hai chủ đề có thể cả hai nhìn thấy và cập nhật cùng một giá trị, nhưng với một AtomicLong
, có đảm bảo khá phong nha xung quanh giá trị mà nhiều chủ đề sẽ thấy.
Có hiệu quả, trừ khi bạn từng làm việc với chủ đề, bạn sẽ không cần sử dụng AtomicLong
.