private async void button5_Click(object sender, RoutedEventArgs e) { List <PeerAddress> ips = await P2PConnectionManager.GetDNSSeedIPAddressesAsync(P2PNetworkParameters.DNSSeedHosts, _networkParameters); Thread threadLable = new Thread(new ThreadStart(() => { while (true) { Dispatcher.Invoke(() => { label.Content = "Inbound: " + P2PConnectionManager.GetInboundP2PConnections().Count + " Outbound: " + P2PConnectionManager.GetOutboundP2PConnections().Count; }); Thread.CurrentThread.Join(1000); } })); threadLable.IsBackground = true; threadLable.Start(); foreach (PeerAddress ip in ips) { Thread connectThread = new Thread(new ThreadStart(() => { P2PConnection p2p = new P2PConnection(ip.IPAddress, _networkParameters, new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)); p2p.ConnectToPeer(1); })); connectThread.IsBackground = true; connectThread.Start(); } }
private async void button4_Click(object sender, RoutedEventArgs e) { List <PeerAddress> ips; if (!_networkParameters.IsTestNet) { ips = await P2PConnectionManager.GetDNSSeedIPAddressesAsync(P2PNetworkParameters.DNSSeedHosts, _networkParameters); } else { ips = await P2PConnectionManager.GetDNSSeedIPAddressesAsync(P2PNetworkParameters.TestNetDNSSeedHosts, _networkParameters); } MessageBox.Show(ips.Count.ToString()); }