// <최대카운터> (counter 초기값)
// 0 <= counter <= MAX (넘어가면 크래시)
std::counting_semaphore<3> sem(3);

void Download(std::string name)
{
	sem.acquire(); // --sem.counter
	for (int i = 0; i < 100; ++i)
	{
		std::cout << name;
	}
	sem.release(); // ++sem.counter
}