JAVA threads (different stacks) synchronization
问题 I have a question regarding synchronization of code that is executed by several threads: As far as I know each thread has its own stack, hence, non-static variables exist in different locations in the memory for each thread (for X threads there are X stacks that include all non-static variables). So why there's a need to synchronize anything? I mean, if the code that the threads execute includes some class variable v1, then each thread has its own "instance" of v1 (different memory address),