On Mon, 22 Jan 2024 08:30:05 GMT, Tejesh R <t...@openjdk.org> wrote:

>> It doesn't work like this. Modification happen in another thread in another 
>> method. This `synchronized` doesn't affect another method.
>
> "_Synchronized methods enable a simple strategy for preventing thread 
> interference and memory consistency errors: if an object is visible to more 
> than one thread, all reads or writes to that object's variables are done 
> through synchronized methods_" as per this statement from the doc 
> ([Synchronized 
> Methods](https://docs.oracle.com/javase/tutorial/essential/concurrency/syncmeth.html))
>  it should be handled right?

_all reads or writes to that object's variables are done through synchronized 
methods_

This is a key requirement. In your case you have added `synchronized` only to a 
method, which reads that object. But a writer is not `synchronized` in you case.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/17462#discussion_r1461498796

Reply via email to