Здравствуйте, GarryIV, Вы писали:
GIV>Здравствуйте, Aleksei_Lekomtsev, Вы писали:
GIV>>>numbers не публичный так что если ты не отдаешь его наружу (а ты не должен) то нет проблем (в том числе и со стороны "руководств").
A_L>>А какие "side effects" могут возникнуть если можно отдавать numbers наружу?
GIV>даже думать не буду, любые
A_L>>Например, кто может начать add/get снаружи в numbers без synchronized (this.numbers)?
GIV>я почем знаю кто? и знать не хочу, нельзя такое отдавать. иммутабельное — можно (при условии сейф паблишинга), треад сейф структуры — можно, линкед лист — нельзя.
GIV>его и в однопоточной проге лучше не отдавать...
*Например, кто может начать add/get снаружи в numbers без synchronized (this.numbers)?
Ошибся, прошу прощения. Хотел написать — кто-то может начать add/get снаружи в numbers без synchronized (this.numbers)?