---
title: IODispatchSource
framework: driverkit
role: symbol
role_heading: Class
path: driverkit/iodispatchsource
---

# IODispatchSource

The common base class for dispatch sources.

## Declaration

```occ
class IODispatchSource;
```

## Topics

### Configuring the Dispatch Source

- [init](driverkit/iodispatchsource/init.md)
- [free](driverkit/iodispatchsource/free.md)
- [Cancel](driverkit/iodispatchsource/cancel.md)

### Enabling and Disabling the Source

- [SetEnable](driverkit/iodispatchsource/setenable.md)
- [SetEnableWithCompletion](driverkit/iodispatchsource/setenablewithcompletion.md)

### Checking the State of the Source

- [CheckForWork](driverkit/iodispatchsource/checkforwork.md)

## Relationships

### Inherits From

- [OSObject](driverkit/osobject.md)

### Inherited By

- [IODataQueueDispatchSource](driverkit/iodataqueuedispatchsource.md)
- [IOInterruptDispatchSource](driverkit/iointerruptdispatchsource.md)
- [IOServiceNotificationDispatchSource](driverkit/ioservicenotificationdispatchsource.md)
- [IOServiceStateNotificationDispatchSource](driverkit/ioservicestatenotificationdispatchsource.md)
- [IOTimerDispatchSource](driverkit/iotimerdispatchsource.md)

## See Also

### Event management

- [IODispatchQueue](driverkit/iodispatchqueue.md)
- [IOInterruptDispatchSource](driverkit/iointerruptdispatchsource.md)
- [IOTimerDispatchSource](driverkit/iotimerdispatchsource.md)
- [IODataQueueDispatchSource](driverkit/iodataqueuedispatchsource.md)
- [OSAction](driverkit/osaction.md)
