public static Options Parse(string[] args) { var options = new Options(); var parser = new CommandLineParser(new CommandLineParserSettings(Console.Error)); options.IsValid = parser.ParseArguments(args, options); return options; }
public void Start(Options options) { using(var context = ZmqContext.Create()) using(var frontend = context.CreateSocket(SocketType.ROUTER)) using(var backend = context.CreateSocket(SocketType.ROUTER)) using(var poller = new Poller(new[]{frontend,backend})) { var frontendEndpoint = string.Format ("tcp://{0}", options.SocketFrontEnd); Console.WriteLine ("Front-end socket binding to: {0}", frontendEndpoint); frontend.Bind(frontendEndpoint); frontend.ReceiveReady += FrontEndReady; var backendEndpoint = string.Format ("tcp://{0}", options.SocketBackEnd); Console.WriteLine ("Back-end socket connecting to: {0}", backendEndpoint); backend.Connect(backendEndpoint); backend.ReceiveReady += BackEndReady; while (true) { poller.Poll(); } } }