더북(TheBook)

4.2.1 메모리 스트림

메모리 스트림은 메모리 버퍼를 감싸둔 것이다. 이때 메모리 버퍼는 힙(heap)에 동적으로 할당한다. 출력 메모리 스트림에는 순차적으로 버퍼에 기록하는 함수가 있는데, 기록된 내용을 나중에 읽어볼 수 있게끔 접근하는 멤버 함수도 있다. 이를 버퍼 접근자(buffer accessor)라 하는데, 접근자를 호출하면 스트림에 쓰여진 내용을 전부 가져와 다른 시스템에 넘길 수 있다. 일례로 버퍼 접근자로 얻은 포인터를 소켓의 send() 함수에 넘겨 메모리 스트림에 기록된 내용을 전부 전송하게 할 수 있다. 코드 4-1에 출력 메모리 스트림 구현 예를 들었다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.