Class threads.thread.sem

Lua thread semaphore creation and manipulation methods.

Functions

init ( ) Initialize a new semaphore.
wait ( sem ) Wait on a semaphore.
wait ( sem ) Attempt a wait on a semaphore.
post ( sem ) Post a semaphore.
destroy ( sem ) Destroy an initialized semaphore and free its resources.


Functions

init ( pshared, initial )
Initialize a new semaphore.

Parameters

  • pshared: share semaphore among processes.
  • initial: inital state (number of accesses).

Usage:

local sem = thread.sem.init(1,2);

Return value:

Initialized mutex, null on failure.
wait ( sem )
Wait on a semaphore.

Parameters

  • sem: Initialized semaphore

Usage:

thread.sem.wait(sem);

Return value:

0 semaphore obtianed, 1 failed to obtain semaphore.
trywait ( sem )
Attempt a wait on a semaphore.

Parameters

  • sem: Initialized semaphore.

Usage

thread.sem.trywait(sem);

Return value:

0 semaphore obtianed, 1 failed to obtain semaphore.

See also:

post ( sem )
Post a semaphore.

Parameters

  • sem: Initialized semaphore.

Usage

thread.sem.post(sem);

Return value:

0 semaphore released, 1 failed to release semaphore.
destroy ( sem )
Destroy an initialized semaphore and free its resources.

Parameters

  • sem: Initialized semaphore

Usage:

thread.sem.destroy(sem);

Return value:

0 semaphore destroyed, 1 failed to destroy semaphore.

Valid XHTML 1.0!