lock_read - General: Asserts a complex lock with read-only
access
#include <kern/lock.h>
void lock_read(
lock_t lock_structptr );
Specifies a pointer to the complex lock structure, lock.
This is the lock structure associated with the resource on
which you want to assert a complex lock with read-only
access. The lock structure is an opaque data structure;
that is, its associated members are referenced and manipulated
by the operating system and not by the user of the
complex lock mechanism.
The lock_read routine asserts a lock with read-only access
for the resource associated with the specified lock structure
pointer. The lock_read routine allows multiple kernel
threads to access the resource read-only at the same time.
When a read lock is asserted, the protected resource is
guaranteed not to change.
To release a previously asserted read lock, call the
lock_done routine.
You must call lock_init (once only) prior to calling
lock_read to initialize the lock structure pointer for the
resource. A resource, from the kernel module's standpoint,
is data that more than one kernel thread can manipulate.
You can store the resource in global variables and
in data structure members.
None
SEE ALSO
Routines: lock_done(9r), lock_terminate(9r),
lock_try_read(9r), lock_try_write(9r), lock_write(9r)
Data Structures: lock(9s)
lock_read(9r)
[ Back ] |