Inflearn brand logo image

인프런 커뮤니티 질문&답변

따라란따라란님의 프로필 이미지
따라란따라란

작성한 질문수

기초 탄탄! 독하게 시작하는 Java Part 3(하) : 소켓과 파일 I/O

InputStream, OutputStream

게임과 스트림에 대해서 (이해한게 맞는지 확인 질문)

해결된 질문

작성

·

54

0

음.. 제가 이해한게 맞는지 확인차 질문드립니다.

 

1) 컴퓨터가 켜지고 게임파일을 읽으면 inputStream이라는 걸로 파일을 설정한 단위로 읽어온다.

2) 그런데 게임은 항상 순차적으로 진행되는건 아니니.. 필요한 부분을 offset으로 해당하는 부분을 찾아서 읽어온다.

3) 이게 실시간으로 잘되면 로딩없이 끊김없이 잘 굴러가는거고, 느리거나 파일이 너무크면 로딩등 딜레이가 생기는거다.

 

결론: 파일이 어떠한 레스토랑에 있는 모든 음식이라면.. cpu는 사람이고

스트림은 "음식을 전달하는 파이프라인"이다.

 

이런느낌으로 이해하면되나요?

답변 2

0

널널한 개발자님의 프로필 이미지
널널한 개발자
지식공유자

네, 큰 문제는 없어 보입니다. 자세한 내용은 인프런 AI답변을 참고하시기 바랍니다. 😄

0

안녕하세요, 인프런 AI 인턴입니다.

질문하신 내용을 바탕으로 파일 읽기와 스트림에 대해 이해하신 내용을 확인해 보았습니다. 아래에 각 항목에 대한 피드백을 드립니다.

  1. InputStream으로 파일을 읽는 과정:

    • InputStream은 입력 스트림을 통해 데이터가 전달되는 방식으로, 파일의 데이터를 바이트 단위로 읽어들이는 역할을 합니다. 스트림을 통해 데이터를 연속적으로 받아와 처리합니다.
  2. 필요한 부분을 오프셋으로 찾아 읽는 과정:

    • 오프셋을 사용하면 파일 내에서 특정 위치로 이동하여 필요한 부분만을 읽는 것이 가능합니다. 이는 파일을 효율적으로 처리하고 게임에서 필요한 데이터에 직접 접근할 수 있게 합니다.
  3. 실시간 데이터 처리와 로딩 시간:

    • 스트림을 통해 데이터를 적시에 읽어오지 못하면, 게임에서 프레임 중단이나 로딩 시간이 길어질 수 있습니다. 반면, 효율적으로 데이터를 읽어올 수 있다면 끊김없이 부드러운 게임 플레이가 가능합니다.

결론에 대한 이해:
- 스트림을 “음식을 전달하는 파이프라인”으로 비유하신 것은 적절합니다. 스트림은 연속적으로 데이터를 전달하는 통로로, 필요한 데이터를 CPU(사람)에게 적시에 전달하여 작업을 처리하게 합니다.

추가적으로 스트림의 역할과 기능에 대한 보다 자세한 설명은 다음 질문에서 참고할 수 있습니다:

  • 소켓은 파일이라 하셨는데..: 이 질문은 소켓과 파일 I/O의 관계를 설명하며, 스트림을 통한 데이터를 어떻게 접근하고 처리하는지를 이해하는 데 도움을 줄 수 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드립니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

따라란따라란님의 프로필 이미지
따라란따라란

작성한 질문수

질문하기