Named POSIX semaphores. Has to be linked with -lpthread
.
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | public, | parameter | :: | SEM_MODE | = | int(o'0660') |
Permissions. |
integer, | public, | parameter | :: | SEM_NAME_LEN | = | ID_LEN+1 |
Max. semaphore identifier length. |
Opaque named semaphore type.
Closes named semaphore. The function returns the following error codes:
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(sem_type), | intent(inout) | :: | sem |
Semaphore type. |
Opens and optionally creates named semaphore. The given name
shall not start with a leading /
.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(sem_type), | intent(inout) | :: | sem |
Semaphore type. |
||
character(len=*), | intent(in) | :: | name |
Semaphore name (without leading |
||
integer, | intent(in), | optional | :: | value |
Initial value. |
|
logical, | intent(in), | optional | :: | create |
Create semaphore. |
|
integer, | intent(in), | optional | :: | mode |
Permissions. |
Returns the name of the semaphore.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(sem_type), | intent(inout) | :: | sem |
Semaphore type. |
Semaphore name.
Increases semaphore value. Returns E_SYSTEM
on error.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(sem_type), | intent(inout) | :: | sem |
Semaphore type. |
Unlinks named semaphore. Returns E_SYSTEM
on error.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(sem_type), | intent(inout) | :: | sem |
Semaphore type. |
Returns the current semaphore value. Returns E_SYSTEM
on error.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(sem_type), | intent(inout) | :: | sem |
Semaphore type. |
||
integer, | intent(out) | :: | value |
Returned value. |
Waits for semaphore. Returns E_SYSTEM
on error.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(sem_type), | intent(inout) | :: | sem |
Semaphore type. |