【发布时间】:2014-10-07 00:34:42
【问题描述】:
如果我有一个对象 A 的实例,并且它有一个实例方法 foo(),并且只有在该方法中创建和使用的变量,即使同一个实例被许多线程访问,该方法是否是线程安全的?
如果是,如果对象 A 上的实例方法 bar() 创建了许多线程并调用了上述文本中的方法 foo(),这是否仍然适用?
这是否意味着每个线程都会获得该方法的“副本”,即使它属于同一个实例?
我故意不使用 synchronized 关键字。
谢谢
【问题讨论】:
-
根据你的描述我不知道。如果局部变量是由本身不是线程安全的方法初始化的,那么
foo()也不是那么好。你有一些代码可以分享吗?
标签: java multithreading