Method
startPeerSyncer
(syncer *PeerSyncer, targetBlkNum uint32)
Source from the content-addressed store, hash-verified
| 292 | } |
| 293 | |
| 294 | func (self *Syncer) startPeerSyncer(syncer *PeerSyncer, targetBlkNum uint32) { |
| 295 | |
| 296 | syncer.lock.Lock() |
| 297 | defer syncer.lock.Unlock() |
| 298 | |
| 299 | if targetBlkNum > syncer.targetBlkNum { |
| 300 | syncer.targetBlkNum = targetBlkNum |
| 301 | } |
| 302 | if syncer.targetBlkNum >= syncer.nextReqBlkNum && !syncer.active { |
| 303 | syncer.active = true |
| 304 | go func() { |
| 305 | syncer.run() |
| 306 | }() |
| 307 | } |
| 308 | } |
| 309 | |
| 310 | func (self *Syncer) cancelFetcherForPeer(peer *PeerSyncer) { |
| 311 | if peer == nil { |
Tested by
no test coverage detected