public void Start(bool connectToPeers = true)
{
if (this.Type != ChainType.Regtest)
{
this.headersRequestWorker.Start();
}
this.blockRequestWorker.Start();
this.statsWorker.Start();
if (connectToPeers)
{
this.peerWorker.Start();
if (this.Type != ChainType.Regtest)
{
// add seed peers
Task.Run(() => AddSeedPeers());
// add known peers
Task.Run(() => AddKnownPeers());
}
else
{
Messaging.GetExternalIPEndPoint();
this.listenWorker.Start();
}
}
}