포트를 열 것인지 여부를 결정하고 싶습니다.selector.select()가 항상 0을 반환하는 이유
InetSocketAddress address = new InetSocketAddress("www.google.com", 80);
Selector selector = Selector.open();
SocketChannel socketChannel = SocketChannel.open();
socketChannel.configureBlocking(false);
socketChannel.connect(address);
socketChannel.register(selector, SelectionKey.OP_WRITE);
int result = selector.select();
System.out.println(result);
포트가 열려 있지 않은 경우, 나는 그것이 그것의 1
이것에 대해 모르겠지만 configureBlocking (false)을 지정했기 때문일 수 있습니다. 이는 비동기식이며 종료 시점을 알 수 없습니까? – RenniePet
쓰기 채널이 준비되었으므로이 코드를 실행할 때 1이 반환 될 것이라고 생각합니다.하지만 0을 반환하므로 혼란 스럽습니다. @ RenniePet – firebroo
다른 답변이 삭제 된 이유는 무엇입니까? – firebroo