예제 #1
0
 public ReqReplyServiceSpecs()
 {
     Reply = string.Empty;
     Replied = new ManualResetEvent(false);
     Console.WriteLine("Start client fiber");
     ClientFiber = PoolFiber.StartNew();
     ClientContext = NetMQContext.Create();
     ServerFiber = PoolFiber.StartNew();
     ServerContext = NetMQContext.Create();
     Func<byte[], string> unmarshaller = x => Encoding.Unicode.GetString(x);
     Func<string, byte[]> marshaller = x => Encoding.Unicode.GetBytes(x);
     Service = new RequestHandlerSocket<string, string>(ServerContext,
         "tcp://Monster:9997",
         unmarshaller,
         marshaller);
     Service.SetRequestHandler(ServerFiber, request => request.Reply(request.Request.ToUpper()));
     Console.WriteLine("Start service");
     Client = new RequestSocket<string, string>(ClientContext,
         "tcp://Monster:9997",
         marshaller,
         unmarshaller);
     Console.WriteLine("Start client");
 }
예제 #2
0
        public ReqReplyServiceSpecs()
        {
            Reply   = string.Empty;
            Replied = new ManualResetEvent(false);
            Console.WriteLine("Start client fiber");
            ClientFiber   = PoolFiber.StartNew();
            ClientContext = NetMQContext.Create();
            ServerFiber   = PoolFiber.StartNew();
            ServerContext = NetMQContext.Create();
            Func <byte[], string> unmarshaller = x => Encoding.Unicode.GetString(x);
            Func <string, byte[]> marshaller   = x => Encoding.Unicode.GetBytes(x);

            Service = new RequestHandlerSocket <string, string>(ServerContext,
                                                                "tcp://Monster:9997",
                                                                unmarshaller,
                                                                marshaller);
            Service.SetRequestHandler(ServerFiber, request => request.Reply(request.Request.ToUpper()));
            Console.WriteLine("Start service");
            Client = new RequestSocket <string, string>(ClientContext,
                                                        "tcp://Monster:9997",
                                                        marshaller,
                                                        unmarshaller);
            Console.WriteLine("Start client");
        }