public void close() { lock (this) { acceptor.quit(); mboxes.clear(); lock (connections) { OtpCookedConnection[] conns = new OtpCookedConnection[connections.Count]; int i = 0; foreach (OtpCookedConnection conn in connections.Values) { conns[i++] = conn; } connections.Clear(); foreach (OtpCookedConnection conn in conns) { conn.close(); } initDone = false; } } }
public static void Main(string[] args) { OtpNode pingNode = new OtpNode("ping"); OtpNode pongNode = new OtpNode("pong"); bool ok = pingNode.ping("pong", 10000); pingNode.close(); pongNode.close(); Environment.Exit(ok ? 0 : 1); }