---
title: DispatchQoS
framework: dispatch
role: symbol
role_heading: Structure
path: dispatch/dispatchqos
---

# DispatchQoS

The quality of service, or the execution priority, to apply to tasks.

## Declaration

```swift
struct DispatchQoS
```

## Overview

Overview A quality-of-service (QoS) class categorizes work to perform on a DispatchQueue. By specifying the quality of a task, you indicate its importance to your app. When scheduling tasks, the system prioritizes those that have higher service classes. Because higher priority work is performed more quickly and with more resources than lower priority work, it typically requires more energy than lower priority work. Accurately specifying appropriate QoS classes for the work your app performs ensures that your app is responsive and energy efficient.

## Topics

### Getting the Predefined QoS Objects

- [userInteractive](dispatch/dispatchqos/userinteractive.md)
- [userInitiated](dispatch/dispatchqos/userinitiated.md)
- [default](dispatch/dispatchqos/default.md)
- [utility](dispatch/dispatchqos/utility.md)
- [background](dispatch/dispatchqos/background.md)
- [unspecified](dispatch/dispatchqos/unspecified.md)

### Creating a QoS Structure

- [init(qosClass:relativePriority:)](dispatch/dispatchqos/init(qosclass:relativepriority:).md)
- [DispatchQoS.QoSClass](dispatch/dispatchqos/qosclass-swift.enum.md)

### Getting the QoS Attributes

- [qosClass](dispatch/dispatchqos/qosclass-swift.property.md)
- [relativePriority](dispatch/dispatchqos/relativepriority.md)

## Relationships

### Conforms To

- [Equatable](swift/equatable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)
