zoukankan      html  css  js  c++  java
  • DuplexChannel

     [ServiceContract(Namespace = "http://xx.com", CallbackContract = typeof(Ipub_c))]
        public interface Ipub_s
        {
            [OperationContract(IsOneWay = true)]
            void toserver(string cs);
        }
        public interface Ipub_c
        {
            [OperationContract(IsOneWay = true)]
            void toclient(string cs);
    
        }
    
    
    
    
    
     [ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Reentrant)]
        public class Bpub : Ipub_s
        {
            public void toserver(string cs)
            {
    
                Ipub_c callback = OperationContext.Current.GetCallbackChannel<Ipub_c>();
                for (int i = 0; i < 1000; i++)
                {
                    System.Threading.Thread.Sleep(1000);
                    callback.toclient(cs + " | " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss fff") + " | " + cs);
                }
            }
        }
    
     ServiceHost host = new ServiceHost(typeof(Bpub));
                    host.AddServiceEndpoint(typeof(Ipub_s), new NetTcpBinding(), "net.tcp://localhost/dd");
                    host.Opened += (s, ek) =>
                    {
                        this.Invoke((Action)delegate
                        {
                            button1.Enabled = false;
                            button1.Text = "已启动";
                            Console.WriteLine("HelloService已经启动,按按回车键终止服务!");
                        });
                    };
                    host.Open();
    
         InstanceContext instanceContext = new InstanceContext(new Bcpub());
                DuplexChannelFactory<WcfSgS.Ipub_s> channel = new DuplexChannelFactory<Ipub_s>(instanceContext, new NetTcpBinding(), "net.tcp://localhost/dd");
                Ipub_s proxy = channel.CreateChannel();
    
    
                proxy.toserver("dddds");
    

      

  • 相关阅读:
    深入理解Java8中Stream的实现原理
    RocketMQ的顺序消费和事务消费
    Java 性能调优小技巧
    类加载机制基础
    十大经典排序算法
    分布式锁的几种常用实现方式
    python之接口开发
    python之urllib模块和requests模块
    python之time模块和hashlib模块
    python之os和sys模块的区别
  • 原文地址:https://www.cnblogs.com/xiangxiong/p/6909664.html
Copyright © 2011-2022 走看看