저수준의 무언가를 구현할때 사용하면 좋을 듯 (그래도 세마포어를 직접 사용하기보단 고수준의 다른 놈들도 많아서..)
카운팅 세마포어
특정 자원이나 메서드에 대해 동시에 호출할수 있는 스레드 수를 제한 할때 사용
Semaphore(최대갯수)
이진 세마포어
카운팅 세마포어의 최대갯수를 1로 설정한 것...(그놈이 그놈 같은데..)
즉 뮤텍스의 역할