上文我们提到了transferBlock会创建一个DataTransfer任务,提交到线程池里去异步执行。
那本文我们来看看DataTransfer这个任务的执行逻辑。
DataTransfer类是DataNode的内部类,实现了Runnable接口:
private class DataTransfer implements Runnable {
}
看下run方法:
/**
* Do the deed, write the bytes
*/
@Override
public