为什么在Hadoop中扩展RecordReader时同步close()方法

时间:2012-07-10 04:41:05

标签: hadoop mapreduce

我会看看给出alexhomes的hadoop-book here

的例子

我无法理解为什么close方法是同步的?为什么只关闭()而没有其他方法?

public synchronized void close() throws IOException {
  reader.close();
}

有人可以解释一下吗?这将非常有帮助。

1 个答案:

答案 0 :(得分:0)

正如我在书中提到的,我使用ElephantBird项目的LzoJsonRecordReader类作为我的版本的基础,因为我想编写一个不需要LZOP压缩的版本。 ElephantBird在他们的RecordReader中使用了一个synchronized close方法,结果也进入了我的版本。正如其他人所提到的,我没有理由在MapReduce中同步close方法。