bitcoin节点在接收peer发过来的块的处理流程
//所有全局变量
//CConnman 的一个关键属性m_msgproc:
如果本地没有peer.dat, 由第一线程CConnman::ThreadDNSAddressSeed从7个硬编码的种子节点解析出大量IP
//seed.bitcoin.sipa.be;
//dnsseed.bluematt.me;
//dnsseed.bitcoin.dashjr.org;
//seed.bitcoinstats.com;
//seed.bitcoin.jonasschnelli.ch;
//seed.btc.petertodd.org;
//seed.bitcoin.sprovoost.nl
然后由第二个线程 CConnman::ThreadOpenConnections 一个去尝试连接,如果连接成功则创建一个CNode, 如下图:
最后由第三个线程 CConnman::ThreadMessageHandler()接受command并处理
处理完peer发过来的message后,回复消息
热门工具 换一换