병렬 연산을 사용해 텍스트에서 문자의 빈도를 세어요.
병렬성이란 순차적으로도 할 수 있는 일을 병렬로 처리하는 것을 말해요. 흔한 예시가 바로 문자의 빈도를 세는 거예요. 병렬성을 활용해 여러 텍스트로 이루어진 목록에서 각 문자의 전체 빈도를 계산해요.
Wren은 _파이버_라는 구조를 통해 _동시성_을 제공해요. Wren 매뉴얼에서:
파이버는 스레드와 조금 비슷하지만, 협력적으로 스케줄링된다는 점이 달라요. 즉, Wren은 여러분이 알려주기 전까지는 한 파이버를 멈추고 다른 파이버로 전환하지 않아요.
Wren의 실행은 단일 스레드라서 실제로 _병렬성_을 얻지는 못해요.
두 가지 차이를 보여 주는, 각각의 간단한 정의를 살펴봐요:
Wren의 동시성에 대해 더 읽어봐요.
Exercism에 가입하고 Wren 트랙을 연습 문제 117개, 그리고 실제 사람의 멘토링과 함께 배우고 익혀 보세요. 모두 무료예요.
동시성과 병렬성의 차이를 살펴보고, JavaScript, Go, Elixir, Rust 같은 언어들이 택한 여러 접근법을 함께 봐요.