세마포어

· 자바
카운팅 세마포어는 특정 자원이나 특정 연산을 동시에 사용하거나 호출할 수 있는 스레드의 수를 제한하고자 할 때 사용한다.카운팅 세마포어의 이런 기능을 활용하면 자원 풀이나 컬렉션의 크기에 제한을 두고자 할 때 유용하다. public Semaphore(int permits) { sync = new NonfairSync(permits); }Semaphore 클래스는 가상의 퍼밋을 만들어 내부 상태를 관리하며, Semaphore를 생성할 때 생성 메소드에 최초로 생성할 퍼밋의 수를 넘겨준다. 외부 스레드는 퍼밋을 요청해 확보하거나, 이전에 확보한 퍼밋을 반납할 수도 있다. public boolean tryAcquire(int permits, long timeout, TimeUnit unit) ..
belljun
'세마포어' 태그의 글 목록