Tôi có một lớp hàngĐây có phải là ấn phẩm an toàn của đối tượng không?
class Item {
public int count;
public Item(int count) {
this.count = count;
}
}
Sau đó, tôi sẽ đặt một tham chiếu đến mục trong một lĩnh vực của lớp khác
class Holder {
public Item item;
public Holder() {
item = new Item(50);
}
}
mới đối tượng mục này có thể được công bố một cách an toàn? Nếu không, tại sao? Theo Java Concurrency trong Thực hành, mục mới được xuất bản mà không được xây dựng hoàn toàn, nhưng theo ý kiến của tôi, mục mới được xây dựng hoàn toàn: tham chiếu this
không thoát và tham chiếu đến nó và trạng thái của nó được xuất bản ở cùng một thời gian, do đó, chuỗi tiêu thụ sẽ không thấy giá trị cũ. Hay là vấn đề hiển thị. Tôi không biết chính xác lý do.
Bài viết thú vị về DW về chủ đề khám phá nhiều vấn đề liên quan đến đồng bộ hóa: http://www.ibm.com/developerworks/java/library/j-jtp0618/index.html – maksimov
Tôi rất tiếc, tôi đã quên nó! – ohyeahchenzai