【问题标题】:Does each SelectionKey (or SelectionKeyImpl) have a unique identifier (id) that I can use?每个 SelectionKey(或 SelectionKeyImpl)是否有一个我可以使用的唯一标识符(id)?
【发布时间】:2012-04-06 15:32:55
【问题描述】:

我的每个SelectionKey 都需要一个唯一的 ID。我可以使用SelectionKeyImpl 的一些内部ID 吗?例如,我可以使用 FD,但我不确定我将始终是每个 SelectionKey 的唯一。

【问题讨论】:

    标签: java sockets networking nio nonblocking


    【解决方案1】:

    SelectionKey 中没有 FD。您可以通过底层 Channel 访问一个 FD,但一个通道可能有多个 SelectionKey,所以这对您没有用处。您所拥有的只是 SelectionKey 自己的身份。

    【讨论】:

      【解决方案2】:

      您可以使用自己的 ID(例如 java.util.UUID)并通过 SelectionKey.attach(Object) 或在使用 Selector 注册频道时将它们附加到键

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-02-01
        • 1970-01-01
        • 2020-09-06
        • 2011-06-03
        • 2015-09-25
        • 2021-03-03
        • 2021-11-24
        • 1970-01-01
        相关资源
        最近更新 更多