Java/NIO
-
[Java NIO] Selector register 이해하기Java/NIO 2024. 6. 11. 06:35
- 목차 들어가며.Java NIO 의 Selector 는 비동기적으로 여러 채널(Channel)을 모니터링할 수 있는 강력한 도구입니다. 이 중에서도 register 메서드는 특정 채널을 Selector에 등록하고 관심 이벤트를 설정하는 중요한 역할을 합니다. 이 글에서는 register 메서드의 사용법과 작동 원리를 살펴보겠습니다. Selector와 Channel의 관계.Selector 는 여러 개의 Channel 을 등록하여, 읽기, 쓰기, 연결 수락 등의 이벤트를 비동기적으로 감지할 수 있습니다. register 메서드는 Selector 와 Channel 사이의 연결 고리 역할을 합니다.Selector: 이벤트를 감지하고, 필요한 처리를 트리거합니다.Channel: Selector 에 등록되어 이벤..
-
[Java NIO] Selector Wakeup 알아보기Java/NIO 2024. 6. 10. 06:32
- 목차 들어가며.Java NIO(Non-blocking IO) 는 효율적인 네트워크 프로그램을 작성할 수 있는 강력한 도구를 제공합니다. 그중에서도 Selector 는 다중 채널에서 이벤트를 감지하여 효율적으로 비동기 작업을 처리할 수 있도록 도와줍니다. 하지만 Selector를 사용할 때 wakeup() 메서드를 정확히 이해하고 사용하는 것이 중요합니다. 이 글에서는 Selector.wakeup() 이 무엇인지, 왜 필요한지, 그리고 실제로 어떻게 동작하는지를 살펴보겠습니다. https://westlife0615.tistory.com/891 [Java NIO] Selector register 이해하기- 목차 들어가며.Java NIO 의 Selector 는 비동기적으로 여러 채널(Channel)을 모니..
-
[Java NIO] NIO 는 어떻게 동작할까 ? (DMA, Kernel Space)Java/NIO 2024. 1. 31. 06:11
- 목차 들어가며.이번 글에서는 Java NIO 가 어떻게 동작하는지 깊이있게 다루어보려고 합니다.앞으로 Java NIO 와 관련된 글들을 이어서 작성할 예정입니다. DMA Controller.먼저 DMA Controller 에 대해서 알아보도록 하겠습니다.컴퓨터를 아주 단순히 표현하면 아래 그림과 같이 표현될 수 있습니다.CPU 와 Memory 그리고 Disk 로 표현될 수 있습니다.좀 더 나아가서 NIC 같은 네트워크 인터페이스가 추가될 수 있죠. 그래서 Disk 에 존재하는 실행파일은 메모리로 옮겨지고,CPU 는 Memory 로 적재된 실행파일의 코드를 한줄 한줄 실행하며 컴퓨터는 동작합니다.또한 Network Card 를 통해서 유입되는 데이터를 읽어들이고, 다시 데이터를 전송하며 Network ..