• 카테고리

    질문 & 답변
  • 세부 분야

    모바일 앱 개발

  • 해결 여부

    미해결

photoStreamController.add(result)에 대해 문의드립니다.

22.07.20 21:02 작성 조회수 101

0

테스트 코드 작성하고 나서 의문이 들어 질문드립니다.

HomeModelView가 fetch를 할 때마다 photoStreamController에 리스트들을 추가 해주므로

페치한 횟수 -> 페치된 리스트 갯수 + 1개(null 리스트)만큼 photoStream에 저장 된다고 이해했습니다.

 

그럼 실제 메인코드 실행 후 검색을 할 때(fetch를 실행할 때)

처음 검색한 'apple' Photo 리스트가 스트림에 추가되고

그 다음에 검색한 'banana' Photo 리스트가 스트림에 추가가 되면 (apple Photo 리스트가 사리지지 않으므로)

그리드 뷰에 삭제되지 않은 apple Photo 리스트가 보여지지 않습니다.

이는 Stream 자체가 새로운 값을 리턴해주기 때문에 그런게 맞는지 궁금합니다.

또한 Stream에는 여전히 apple Photo가 남는게 맞는건가요?

(이는 테스트 코드로 확인했으나 확실하게 넘어가고 싶습니다.)

요약하자면 fetch할 때마다 스트림에 추가가 되는데 전에 스트림에 담겨있던 사진들은 스트림에서 어떻게 관리가 되는지 궁금합니다.

답변 1

답변을 작성해보세요.

0

Stream 은 데이터를 밀어 넣으면 이를 구독하는 쪽으로 방출이 됩니다.

따라서 기존 데이터가 쌓이지 않고

마지막에 추가된 새로운 데이터가 최신 데이터가 됩니다.

shhsjk2002님의 프로필

shhsjk2002

질문자

2022.07.21

fetch를 할 때마다 테스트 코드에서 여러개의 리스트가 출력되어서 스트림에 여러 개가 저장되는줄 알았는데,

생각해보니 스트림 리스트 하나를 여러번 보여주는거였네요.

답변 감사합니다.