Bitcoin Wire Protocol

Block Manager 需要處理的東西

https://github.com/btcsuite/btcd/blob/master/blockmanager.go

blockmanager 的主要 loop

        case \*newPeerMsg:
            b.handleNewPeerMsg\(candidatePeers, msg.peer\)

        case \*txMsg:
            b.handleTxMsg\(msg\)
            msg.peer.txProcessed <- struct{}{}

        case \*blockMsg:
            b.handleBlockMsg\(msg\)
            msg.peer.blockProcessed <- struct{}{}

        case \*invMsg:
            b.handleInvMsg\(msg\)

        case \*headersMsg:
            b.handleHeadersMsg\(msg\)

        case \*donePeerMsg:
            b.handleDonePeerMsg\(candidatePeers, msg.peer\)

        case getSyncPeerMsg:
            msg.reply <- b.syncPeer

        case processBlockMsg:

        case isCurrentMsg:
        msg.reply <- b.current()

    case pauseMsg:
        // Wait until the sender unpauses the manager.
        <-msg.unpause

results matching ""

    No results matching ""