From file semaphore_utils.iol

Port Name

Location

Protocol

SemaphoreUtils

List of the available interfaces

Interface SemaphoreUtilsInterface

Heading

Input type

Output type

Faults

acquire

SemaphoreRequest

bool

release

SemaphoreRequest

bool

Operation list

release

release( SemaphoreRequest )( bool )

Releases permits to a semaphore. If there exists no semaphore with the given ".name", "release" creates a new semaphore with that name and as many permits as indicated in ".permits". The default behaviour when value ".permits" is absent is to release one permit.

acquire

acquire( SemaphoreRequest )( bool )

Acquires permits from a semaphore. If there exists no semaphore with the given ".name", "acquire" creates a new semaphore with 0 permits with that name. The operation returns a response when a new permit is released (see operation "release"). The default behaviour when value ".permits" is absent is to acquire one permit.

Message type list

SemaphoreRequest

type SemaphoreRequest: void {
.permits?: int
.name: string
}

Type list