Function | Package: mp | ToC | DocOverview | CGDoc | RelNotes | FAQ | Index | PermutedIndex
| Allegro CL version 10.1 Unrevised from 10.0 to 10.1. 10.0 version

## put-semaphore

Arguments: gate

Gates can be used as semaphores. Each gate created by make-gate has an associated semaphore count that starts at 0. put-semaphore increments the gate's semaphore count, opens the gate, and then releases just one of the threads waiting on that gate, if there are any. This differs from a call to open-gate, which releases all threads waiting on the gate. This can be more efficient than open-gate when several threads are processing a work queue. mp:enqueue and mp:dequeue use semaphores internally to get the improved efficiency. See get-semaphore.

See multiprocessing.htm for general information on multiprocessing in Allegro CL.

Copyright (c) 1998-2022, Franz Inc. Lafayette, CA., USA. All rights reserved.
This page was not revised from the 10.0 page.
Created 2019.8.20.

|  | ToC | DocOverview | CGDoc | RelNotes | FAQ | Index | PermutedIndex
| Allegro CL version 10.1 Unrevised from 10.0 to 10.1. 10.0 version