All Manuals > LispWorks User Guide and Reference Manual > 44 The MP Package

NextPrevUpTopContentsIndex

lock-and-condition-variable-broadcast

Function
Summary

Locks, applies a setup function, calls condition-variable-broadcast and unlocks.

Package

mp

Signature

lock-and-condition-variable-broadcast lock condvar lock-timeout setup-function &rest args

Description

The function lock-and-condition-variable-broadcast locks the lock lock, applies the function setup-function, calls condition-variable-broadcast and unlocks. lock-and-condition-variable-broadcast makes it easier to avoid mistakes in using a condition variable.

lock-and-condition-variable-broadcast performs the equivalent of:

(mp:with-lock (lock
 nil lock-timeout
)
  (apply setup-function
 args
)
  (mp:condition-variable-broadcast condvar
))

It returns the result of the call to condition-variable-broadcast.

See condition-variable-broadcast and with-lock for more details.

Notes

setup-function is called with the lock held, so it should do the minimum amount of work and avoid locking other locks.

See also

lock-and-condition-variable-wait
simple-lock-and-condition-variable-wait
lock-and-condition-variable-signal
condition-variable-wait
condition-variable-signal
condition-variable-broadcast
processes-count


LispWorks User Guide and Reference Manual - 13 Feb 2015

NextPrevUpTopContentsIndex