同步方法中的synchronized(this)块

时间:2016-06-11 17:30:01

标签: java multithreading synchronized-block

以下是讨论公开呼叫 java concurrency in practice 一书中的代码段。我没有得到的是setLocation方法的声明方式,它已经被同步并再次在同一个方法中调用synchronized(this)块,为什么呢?是类型错误吗? synchronized方法已经锁定了这个方法,为什么再次为同一个对象?

employeeOps = new EmployeeOperations(this);

1 个答案:

答案 0 :(得分:5)

这本书中的错误。见the errata

  

在代码清单10.6中,Taxi.setLocation不应该是同步方法。 (但是,它身体中的同步块是正确的。)