-
eth/downloader/downloader.go 里new 一个downloader 对象,new 的时候会创建一个goroutine 执行eth/downloader/statesync.go 的stateFetcher 方法
-
eth/downloader/statesync.go 的stateFetcher 等待触发d.stateSyncStart,然后循环调用runStateSync 方法
-
runStateSync 启动gorotine调用run 方法,同时主线程如果再遇到触发了d.stateSyncStart,会return 方法
-
run 方法调用loop 方法
-
-
eth/downloader/statesync.go 的syncState 方法会触发d.stateSyncStart
-
eth/downloader/downloader.go 的processFastSyncContent 方法触发syncState 方法,传入当前连接的远程节点的最新区块的header 信息
-
header
-
body
-
recption
-
processheader
-
processstate