private void Handle_MiningFinished(BlockChainEventArgs args) { var sender = (args.Sender as string); var newChain = (args.Data as List <Block>); if (sender != null && newChain != null) { if (sender != this.Address.ToString()) { BlockChain.RefeshChain(newChain); } } }
private async void MiningBlock(BlockChainEventArgs args) { var sender = (args.Sender as string); var transactions = (args.Data as List <Transaction>); if (sender != null && transactions != null) { if (sender != this.Address.ToString()) { BlockChain.AddToTransactionPool(transactions); BlockChain.MineBlock(this.Address.ToString()); await Task.Delay(TimeSpan.FromSeconds(10 - computingPower)); EventHub.Puplish_MiningFinished(new BlockChainEventArgs(this.Address.ToString(), BlockChain.Chain)); } } }
private void Handle_MinigRequest(BlockChainEventArgs args) { MiningBlock(args); }