lock_set_create
Function - Create a new lock set.
SYNOPSIS
kern_return_t lock_set_create
(task_t task,
lock_set_t lock_set,
int locks,
int policy);
PARAMETERS
- task
-
The task receiving the send right to the newly created lock set.
- lock_set
-
[out send right] The port naming the lock set which represents the lock.
- locks
-
[in scalar] The number of locks the lock set will represent (must be a positive value).
- policy
-
[in scalar] The blocked thread wakeup policy for the newly created lock set. Valid policies are:
- SYNC_POLICY_FIFO
-
a first-in-first-out policy for scheduling thread wakeup.
- SYNC_POLICY_FIXED_PRIORITY
-
a fixed priority policy for scheduling thread wakeup.
DESCRIPTION
The lock_set_create function creates a new lock set representing a
collection of associated locks. The lock set is associated with the
specified task. A send right naming the lock set is returned to the
caller.
RETURN VALUES
- KERN_SUCCESS
-
The lock set was created.
- KERN_INVALID_ARGUMENT
-
Either the task or policy argument is invalid, or the locks argument
has a value that is less than or equal to zero.
- KERN_RESOURCE_SHORTAGE
-
The kernel could not allocate the lock set.
RELATED INFORMATION
Functions:
lock_acquire,
lock_make_stable,
lock_try,
lock_handoff,
lock_handoff_accept,
lock_try,
lock_set_destroy.