수집 쓰기 채널

수집 쓰기 채널 (GatheringByteChannel)

바이트를 여러 버퍼의 시퀀스로부터 한 번에 쓰는 채널을 나타내는 인터페이스예요. gather 쓰기(gathering write)를 지원합니다.

출처: Java API Reference

본문

GatheringByteChannel은 한 번의 호출로 여러 버퍼의 시퀀스로부터 바이트를 쓰는 채널을 나타내는 인터페이스예요.

public interface GatheringByteChannel extends WritableByteChannel

gathering write는 하나의 호출에서 주어진 버퍼 시퀀스 중 하나 이상으로부터 일련의 바이트를 써요. 네트워크 프로토콜이나 파일 형식을 구현할 때 유용한데, 예를 들어 고정 길이 헤더 뒤에 가변 길이 본문이 오는 세그먼트로 데이터를 묶을 때 헤더와 본문을 서로 다른 버퍼에 두고 한 번에 쓸 수 있어요.

long write(ByteBuffer[] srcs, int offset, int length) throws IOException
long write(ByteBuffer[] srcs) throws IOException
  • write(ByteBuffer[] srcs) — 주어진 모든 버퍼에서 순서대로 버퍼가 비워질 때까지 써요.
  • write(ByteBuffer[] srcs, int offset, int length) — 버퍼 배열의 일부(offset부터 length개)만 사용합니다.

비슷한 scatter 읽기 연산은 ScatteringByteChannel 인터페이스에 정의되어 있어요.

더 알아보기 (Learn more)