비동기 서버소켓 채널
- open() : 기본 비동기 채널 그룹에 포함되는 비동기 서버 소켓 채널을 얻는 방법
AsynchronousServerSocketChannel asychronousServerSocketChannel = AsynchronousServerSocketChannel.open();
- open(AsynchronousChannelGroup) : 별도로 비동기 채널 그룹을 생성하고 여기에 포함되는 비동기 서버 소켓 채널을 얻는 방법
AsynchronousChannelGroup channelGroup = AsynchronousChannelGroup.withFixedThreadPool(Runtime.getRuntime().availableProcessors(), Executors.defaultThreadFactory());
AsynchronousServerSocketChannel asynchronousServerSocketChannel = AsynchronousServerSocketChannel.open(channelGroup);
- 포트바인딩
asynchronousServerSocketChannel.bint(new InetSocketAddress(5001));
- 언바인딩
asynchronousServerSocketChannel.close();
- 연결 수락 작업
accept(A attachment, CompletionHandler<AsynchronousSocketChannel, A> handler);
ex) asynchronousServerSocketChannel.accept(null, new CompletionHandler<AsynchronousSocketChannel, void>(){
public void completed(AsynchronousSocketChannel asynchronousSocketChannel,Void attachment){
//연결 후 실행 코드
asynchronousServerSocketChannel.accept(null,this);
}
public void failed(Throwable exc, Void attachment){
//연결 수락 실패 시 실행할 코드
}
});
2017/01/05 - [코딩/Java] - [NIO]TCP 비동기 채널?
'코딩 > Java' 카테고리의 다른 글
[NIO]TCP 비동기/블로킹/넌블로킹의 차이 (0) | 2017.01.05 |
---|---|
[NIO]TCP 비동기 채널 - 비동기 소켓 채널 (0) | 2017.01.05 |
[NIO]TCP 비동기 채널? (0) | 2017.01.05 |
[NIO]TCP 넌블로킹 채널 - 선택된 키셋 (0) | 2017.01.05 |
[NIO]TCP 넌블로킹 채널 - 셀렉터 생성과 등록 (0) | 2017.01.05 |