[NIO]TCP 비동기 채널?
2017. 1. 5. 21:42 - 개발 새발
TCP 비동기 채널은 연결요청(connect()), 연결 수락(accept()), 읽기(read()), 쓰기(write()) 를 호출하면 즉시 리턴된다. 이것은 넌블로킹 방식과 동일하다. 차이점은 이 메소드들을 호출하면 스레드풀에게 작업 처리를 요청하고 이메소드들은 즉시 리턴된다. 실질적인 작업 처리는 스레드풀의 작업 스레드가 담당한다. 작업 스레드가 작업을 완료하게 되면 콜백(callback) 메소드가 자동 호출되기 때문에 작업 완료 후 실행해야 할 코드가 있다면 콜백 메소드에서 작성하면 된다.
- 비동기 채널 그룹
선언
AsynchronousChannelGroup channelGroup = AsynchronousChannelGroup.withFixedThreadPool(최대 스레드 수, Executors.defaultThreadFactory());
ex) AsynchronousChannelGroup channelGroup = AsynchronousChannelGroup.withFixedThreadPool(Runtime.getRuntime().availableprocessors(), Executors.defaultThreadFactory());
종료시
channelGroup.shutdown(); channelGroup.shutdownNow();
'코딩 > 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 |