public bool TryRemoveChainedHeader(UInt256 blockHash)
{
ChainedHeader chainedHeader;
lock (cachedHeaders)
if (this.cachedHeaders.Value.TryGetValue(blockHash, out chainedHeader))
{
if (chainedHeader != null && this.blockStorage.Value.TryRemoveChainedHeader(blockHash))
{
this.cachedHeaders.Value[blockHash] = null;
ChainedHeaderRemoved?.Invoke(blockHash);
return true;
}
else
return false;
}
else if (this.blockStorage.Value.TryRemoveChainedHeader(blockHash))
{
this.cachedHeaders.Value[blockHash] = null;
ChainedHeaderRemoved?.Invoke(blockHash);
return true;
}
else
return false;
}