Last updated 2004-06-28 by Roedy
Green ©1996-2004 Canadian Mind Products
Java definitions: 0-9 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
You are here : home : Java Glossary : S words : semaphore.
Semphores are a classical technique for protecting critical sections of code from being simultaneously executed by more than one thread. A semaphore is a generalisation of a monitor. A monitor allows only one thread to lock an object at once. A semaphore allows N processes. The process of grabbing a semaphore for semi-exclusive use is called downing the semaphore because they are implemented with a countdown integer that decrements for each lock and increments for each unlock. If a semaphore is fully occupied, new threads wanting to use it will wait until some thread releases its lock by upping the semaphore. For a semaphore to work, the check for full, and the decrement must be done all in one atomic uninterruptible instruction. The JVM monitor instructions provide the needed hardware support to simulate semaphores.
home |
Canadian Mind Products | |||
| mindprod.com IP:[24.87.56.253] | ||||
| Your IP:[80.134.30.163] | ||||
| You are visitor number 3271. | ||||
| Please send errors, omissions and suggestions | ||||
| to improve this page to Roedy Green. | ||||
| You can get a fresh copy of this page from: | or possibly from your local J: drive mirror: | |||
| http://mindprod.com/jgloss/semaphore.html | J:\mindprod\jgloss\semaphore.html | |||