---
title: IORWLockAlloc
framework: driverkit
role: symbol
role_heading: Function
path: driverkit/iorwlockalloc
---

# IORWLockAlloc

## Declaration

```occ
struct IORWLock *IORWLockAlloc();
```

## Return Value

Return Value Pointer to the allocated lock, or zero on failure.

## Discussion

Discussion Allocates and initializes a read/write lock. Allocates and initializes a read/write lock in general purpose memory. Read/write locks provide for multiple readers, one exclusive writer.

## See Also

### Functions

- [dequeue_head](driverkit/dequeue_head.md)
- [dequeue_tail](driverkit/dequeue_tail.md)
- [enqueue_head](driverkit/enqueue_head.md)
- [enqueue_tail](driverkit/enqueue_tail.md)
- [get_IOHistogramReporter_IVars](driverkit/get_iohistogramreporter_ivars-4lwpg.md)
- [get_IOHistogramReporter_IVars](driverkit/get_iohistogramreporter_ivars-5lkdv.md)
- [get_IOReporter_IVars](driverkit/get_ioreporter_ivars-6q8vt.md)
- [get_IOReporter_IVars](driverkit/get_ioreporter_ivars-89ntc.md)
- [get_IOStateReporter_IVars](driverkit/get_iostatereporter_ivars-3g28i.md)
- [get_IOStateReporter_IVars](driverkit/get_iostatereporter_ivars-56435.md)
- [insque](driverkit/insque.md)
- [IOCallOnce](driverkit/iocallonce.md)
- [IOLockAlloc](driverkit/iolockalloc.md)
- [IOLockAssert](driverkit/iolockassert.md)
- [IOLockFree](driverkit/iolockfree.md)
