Информация об изменениях

Сообщение Re[4]: Вопрос по synchronized от 26.10.2023 18:21

Изменено 26.10.2023 18:25 Aleksei_Lekomtsev

Re[4]: Вопрос по synchronized
Здравствуйте, 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)?
Re[4]: Вопрос по synchronized
Здравствуйте, 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)?