none
remoting 客户端超时问题! RRS feed

  • 问题

  •   IChannel channel = new TcpClientChannel("Cksj", new BinaryClientFormatterSinkProvider());
                        ChannelServices.RegisterChannel(channel, false);
    IClientFactory cFactory = (IClientFactory)Activator.GetObject(typeof(IClientFactory), "tcp://127.0.0.1:4000/Service");

    我在客户端这样注册信道,怎样设置超时?因为地址不存在的话会等很久。
    客户端和服务端都没有使用config文件来配置,都是代码创建,如何在代码中设置超时!
    2009年9月10日 14:28

答案

  • // Specify client channel properties.
    IDictionary dict = new Hashtable();
    dict["port"] = 9090;
    dict["timeout"] = 1000;
    
    // Set up a client channel.
    TcpClientChannel clientChannel = new TcpClientChannel(dict, null);
    
    

    知识改变命运,奋斗成就人生!
    2009年9月11日 0:59
    版主

全部回复

  • // Specify client channel properties.
    IDictionary dict = new Hashtable();
    dict["port"] = 9090;
    dict["timeout"] = 1000;
    
    // Set up a client channel.
    TcpClientChannel clientChannel = new TcpClientChannel(dict, null);
    
    

    知识改变命运,奋斗成就人生!
    2009年9月11日 0:59
    版主
  • 回复楼上,这样写没用!我已经试过了,还是会HAN 10秒以上!
    并且,客户端应该不能指定 dict["port"] = 9090; 这个参数的。。你这应该是服务端的写法吧
    2009年9月11日 6:23