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); }
public static void Main(string[] args) { OtpNode b = new OtpNode("b"); var echo = b.CreateMbox("echo"); echo.Received += (e) => { OtpErlangTuple t = (OtpErlangTuple)e.Msg.Payload; OtpErlangPid sender = (OtpErlangPid)t.ElementAt(0); Logger.Debug($"-> ECHO {t.ElementAt(1)} from {sender}"); t[0] = e.Mbox.Self; e.Mbox.Send(sender, t); }; OtpNode a = new OtpNode("a"); OtpMbox echoback = a.CreateMbox("echoback"); echoback.Send(echo.Self, new OtpErlangTuple(echoback.Self, new OtpErlangString("Hello, World!"))); Logger.Debug($"<- ECHO (back) {echoback.ReceiveMsg()}"); a.Close(); b.Close(); }