【发布时间】:2009-11-02 08:57:25
【问题描述】:
我对线程安全编程很陌生,想知道是否有类似下面的内容,一旦编译并运行,这是否可以避免死锁?
public class Foo
{
protected CustomClass[] _mySynchedData = new CustomClass[10];
public void processData()
{
synchronized(_mySynchedData) {
// ...do stuff with synched variable here
}
}
}
public class Bar extends Foo
{
@Override
public void processData()
{
synchronized(_mySynchedData) {
// perform extended functionality on synched variable here
// ...then continue onto parent functionality while keeping synched
super.processData();
}
}
}
Bar testObj = new Bar();
// Deadlock?
testObj.processData();
【问题讨论】:
标签: java synchronization synchronized synchronize