prgrms-web-devcourse / BE-Team-preArmand-Book-study

2 stars 2 forks source link

[아이템 46] 병렬화와 반복의 관계 #25

Closed Leeyerimearth closed 2 years ago

Leeyerimearth commented 2 years ago
  1. 278p. 중간 부분에 forEach연산은 대놓고 반복적이라서 병렬화 할 수 없다. 라는 문장이 나오는데, 병렬화와 반복의 관계가 잘 이해가 가지 않습니다. 예를들면. a~ z 까지 있다면, 반복문은 이걸 (순차적)으로 반복해야하는데 병렬화는 (예를들면) a b c 를 병렬로 처리하기 때문에 위의 반복적이라서 병렬화 할 수 없다. 라고 하는걸까요?

2 . downstream을 혹시 어떻게 이해하고 계신가요? 이번 아이템에 다운 스트림이라고 나오는데 이 개념을 잘 모르겠네요🥲

kimziou77 commented 2 years ago
  1. 저는 단순히 여기서 사용하려는 목적에 맞는 groupbingBy 메서드의 시그니처를 말한것으로 이해했습니다!

    groupingBy가 반환하는 수집기가 리스트 외에 값을 갖는 맵을 생성하게 하려면 분류함수(classifier) 와 함께, 수집기(downstream)도 명시해야 한다 - 281p

    public static <T, K, A, D>
    Collector<T, ?, Map<K, D>> groupingBy(Function<? super T, ? extends K> classifier,
    Collector<? super T, A, D> downstream) {
    return groupingBy(classifier, HashMap::new, downstream);
    }
  2. 병렬프로그래밍..은 좀 더 공부해 봐야겠네요 여기 글이 좋다고 느껴졌습니다 하하 https://stackoverflow.com/questions/16635398/java-8-iterable-foreach-vs-foreach-loop/20177092#20177092