---
title: DispatchObject
framework: dispatch
role: symbol
role_heading: Class
path: dispatch/dispatchobject
---

# DispatchObject

The base class for most dispatch types.

## Declaration

```swift
class DispatchObject
```

## Overview

Overview There are many types of dispatch objects, including DispatchQueue, DispatchGroup, and DispatchSource. The base dispatch object interfaces allow you to manage memory, pause and resume execution, define object context, log task data, and more.

## Topics

### Activating, Suspending, and Resuming

- [activate()](dispatch/dispatchobject/activate().md)
- [resume()](dispatch/dispatchobject/resume().md)
- [suspend()](dispatch/dispatchobject/suspend().md)

### Changing the Assigned Target Queue

- [setTarget(queue:)](dispatch/dispatchobject/settarget(queue:).md)

## Relationships

### Inherits From

- [OS_object](os/os_object.md)

### Inherited By

- [DispatchGroup](dispatch/dispatchgroup.md)
- [DispatchIO](dispatch/dispatchio.md)
- [DispatchQueue](dispatch/dispatchqueue.md)
- [DispatchSemaphore](dispatch/dispatchsemaphore.md)
- [DispatchSource](dispatch/dispatchsource.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Dispatch Objects

- [DispatchPredicate](dispatch/dispatchpredicate.md)
- [dispatchPrecondition(condition:)](dispatch/dispatchprecondition(condition:).md)
- [Dispatch Objects](dispatch/dispatch-objects.md)
