스레드 폭주는 시스템이 감당할 수 없을 정도로 너무 많은 스레드가 한꺼번에 만들어져서, 오히려 성능이 뚝 떨어지거나 앱이 멈추는 현상을 말해요.
기존의 GCD 방식에서는 우리가 작업을 던질 때마다 시스템이 "어? 작업이 더 들어왔네? 스레드 하나 더 만들지 뭐~(스레드 생성 드가자)" 하고 스레드를 계속 늘릴 수 있었어요.
Swift Concurrency는 코어 개수(예를 들자면 8개)만큼만 스레드를 딱 고정해서 만들어요.
일이 많아도 스레드를 더 만드는게 아니라, await을 만나면 하던 일을 잠시 내려놓고 다른 일이 집어 드는 "협력적(Cooperative)" 방식을 사용해 폭주를 막아요.