线程有局部变量的单独拷贝。我有一个哈希表对象被创建的方法。对于两个不同的线程是否会有两个不同的散列表对象副本?散列表对象然后传递给其他方法。线程拷贝的局部变量
实例方法:
public void exampleMethod(String a,String b, String c)
{
final Hashtable<String,String> parameterMap=new Hashtable<String,String>();
parameterMap.put("key1",a);
parameterMap.put("key2",b);
parameterMap.put("key3",c);
pqrsObject.takeRequest(parameterMap);
}
散列表就像任何其他的局部变量 - 你回答了你自己的问题... – yurib 2014-11-05 12:50:46
只要这个代码,是的,每次你调用exampleMethod时会有新的实例。如果代码中的其他部分(takeRequest()将引用赋值给一个可以从不同线程访问的变量并不清楚,但看起来并非如此 – PeterMmm 2014-11-05 12:51:30
是的,除非您仅调用一次pqrsObject.takeRequest和多个线程在同一个pqrsObject对象中访问/修改你的哈希映射。 – SMA 2014-11-05 12:53:10