메인 스레드에서 분산처리 시킨 작업을 다른 여러개의 스레드에서 분산하여 동시에 처리한다.
작업의 순서와 상관 없이 독립적이지만 유사한 여러개의 작업을 처리할 때 사용한다.
필요한 이유: 여러개의 작업을 처리할 때 성능과 반응성을 좋게 하기위함 이는 곧 최적화와 관련이있다.
다른 스레드에게 일을 시작시키고 작업이 끝날때까지 기다린다.
다른 스레드에게 일을 시작시키고 작업이 끝날때까지 기다리지 않는다.
작업을 보내는 스레드에 관련된 개념
메인 스레드에서 분산처리 시킨 작업을 다른 한개의 스레드에서 처리한다.
작업의 순서가 필요한 경우 사용한다.
특정 순간에 여러 작업(Task)이 동시에 병렬로 실행되는 것을 의미, 여러 코어에서 작업이 진행되기에 진정한 의미의 동시 실행이라고 할 수 있다.