2016-12-13 1 views
0

NIO에서 Java 선택기를 사용하고 있습니다. 선택 키/관심사 키를 특정 채널 및 선택기에 등록합니다. 자, 내 요구 사항은 특정 선택 자에 대해 둘 이상의 관심 분야 세트를 갖는 것입니다.다수의 Register SelectionKey

try { 
     Selector selector = Selector.open(); 
     ServerSocketChannel channel = ServerSocketChannel.open(); 
     //FileChannel channel = new FileInputStream("").getChannel(); 

     channel.configureBlocking(false); 

     SelectionKey key1 = channel.register(selector, SelectionKey.OP_READ); 
     SelectionKey key2 = channel.register(selector, SelectionKey.OP_WRITE); 

    } catch (IOException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 

내 질문은, 내가 두 diffrent 키을 피할 수있는 방법이있다 : 내가 무슨 짓을

다음과 같이 다른 선택 옵션이 selectionkeys을입니까?

답변

0

당신은 이진 또는 수있는 키를 함께 하나의 관심 만들 :

SelectionKey key = channel.register(selector, SelectionKey.OP_READ | SelectionKey.OP_WRITE); 
+1

더 일반적인 이름은 "비트 또는"https://en.wikipedia.org/wiki/Bitwise_operation#OR을 –