0
Java NIO 서버를 자체 스레드로 구현하려고합니다.Java NIO 스레드 selector.select() Nullpointer
public class MyServer extends MyThread
{
ServerSocketChannel server;
Selector selector;
public MyServer
{
super();
this.server = ServerSocketChannel.open();
this.server.configureBlocking(false);
this.server.socket().bind(new java.net.InetSocketAddress(InetAddress.getLocalHost(), 6666));
this.selector = Selector.open();
this.server.register(selector,SelectionKey.OP_ACCEPT);
}
public void run()
{
while(true)
{
this.selector.select();
Set<SelectionKey> keys = selector.selectedKeys();
Iterator<SelectionKey> i = keys.iterator();
// Do channel work there
}
}
}
문제점 this.selector.select()에서 NullpointerException이 발생합니다. 내 실행 방법. 나를 도와 줄 수 있습니까? 나는 그 문제를 보지 못한다.
질문에 스택 추적을 추가하십시오. –
좋아, 알아 냈어. 문제는 내 스레드의 생성자가 서버 생성자가 완료되기 전에 스레드를 실행하고 있다는 것입니다. –