【发布时间】:2011-08-31 14:00:08
【问题描述】:
嗨,我正在研究线程并用它们实现一些简单的示例。另外,我知道如何锁定和使用同步语句,但我看到了一个这样的例子;
private List<Foo> myList = new ArrayList<Foo>();
private Map<String,Bar) myMap = new HashMap<String,Bar>();
public void put( String s, Bar b ) {
synchronized( myMap ) {
myMap.put( s,b );
// then some thing that may take a while like a database access or RPC or notifying listeners
}
}
那么如何以及为什么可以将变量用作同步块的锁_?。我总是使用“this”这个词来访问语句。
【问题讨论】:
标签: variables locking block private synchronized