【问题标题】:What is the meaning of child.connectTimeoutMillis in Netty's configuration?Netty的配置中child.connectTimeoutMillis是什么意思?
【发布时间】:2011-03-15 03:33:36
【问题描述】:

这在netty中有什么作用?

bootstrap.setOption("child.connectTimeoutMillis", x);

【问题讨论】:

  • 关于将答案标记为正确的时间,您同意吗?

标签: java nio netty


【解决方案1】:

“child.connectionTimeoutMillis”不会对 ClientBootstrap 和 ServerBootstrap 执行任何操作。

这是一个客户端选项,因此它只能用作 ClientBootstrap 实例上的“connectionTimeoutMillis”(不包括“child.”部分)。

我需要什么选项来让我的所有客户永远保持不变(没有超时)?

对 ServerBootstrap 使用“child.keepAlive”,对 ClientBootstrap 使用“keepAlive”。

【讨论】:

    【解决方案2】:

    public void setOption(String key, Object value)

    使用指定的键和值设置选项。如果已经存在具有相同键的选项,则将其替换为新值。如果指定值为 null,则删除具有指定键的现有选项。要设置子 Channel 的选项值,请在前面加上“child”。到选项名称(例如“child.keepAlive”)。

    参数:

    key - 选项名称

    value - 期权价值

    还有 bootstrap.setOption("child.connectTimeoutMillis", x);以毫秒为单位设置通道(在本例中为子通道)的连接超时。如果将该值设置为 0,则会禁用超时选项。

    【讨论】:

    • 实际上,您必须省略“孩子”。前缀,因为连接超时是一个客户端选项,而 TCP/IP 客户端通道工厂创建一个没有父通道的通道。
    • 也就是说,如果我正在编写服务器,这个选项对我来说没用?我需要什么选项来让我的所有客户永远保持下去(没有超时)?
    猜你喜欢
    • 2021-03-29
    • 2015-10-25
    • 2023-02-02
    • 2014-01-26
    • 2014-01-30
    • 2012-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多