A Semaphore is a thread synchronization mechanism that can be used - To send signals between threads To guard a critical section for enforcing limited access to the resource Semaphore in java come with java 1.5 and available under package "java.util.concurrent" Below is an example which you can go through to understand how we can enforce a limited number of thread to access a particular section of code at a time. import java.util.concurrent.Semaphore; public class SemaphoreExample { Semaphore semaphore = new Semaphore(2); private void printLock() { try { semaphore.acquire(); System.out.println("Lock acquired by "+Thread.currentThread().getName()); System.out.println("Locks remaining "+semaphore.availablePermits()); Thread.sleep(5000); } catch (InterruptedException ie) { ie.printStackTrace(); } finally { semaphore.release(); System.out.println("Locks release "+Thread.cur...
Computer science engineering's subject topics notes, Programming Notes and personal finance stuff