lock {synchronicity}R Documentation

Lock and Unlock a Mutex

Description

The lock and unlock functions allow a user to specify exclusive or shared access to a resource.

Usage

lock(m, ...)

lock.shared(m, ...)

unlock(m, ...)

unlock.shared(m, ...)

Arguments

m

a mutex.

...

options associated with the mutex being used including block which forces the mutex to return immediately after trying to acquire a lock.

Details

A call to lock gives exclusive access to a resource; no other mutex may acquire a lock. A call to to lock.shared allows other mutexes to acquire a shared lock on the resource. When shared lock is called while a exclusive lock has been acquired, the shared lock will block until the exclusive lock is release. Likewise, if an exclusive lock is called while a shared lock has been acquired, the exclusive lock will block until the shared lock is released.

Value

The function returns TRUE if the lock is successfully called and FALSE otherwise.

Examples

m = boost.mutex()
lock(m)
# Some code that needs to be synchronized...
unlock(m)

[Package synchronicity version 1.3.10 Index]