---
title: VNRequestProgressProviding
framework: vision
role: symbol
role_heading: Protocol
path: vision/vnrequestprogressproviding
---

# VNRequestProgressProviding

A protocol for providing progress information on long-running tasks in Vision.

## Declaration

```swift
protocol VNRequestProgressProviding : NSObjectProtocol
```

## Overview

Overview Adopt this protocol for potentially long-running Vision requests to provide information about progress throughout processing. For example, you can use the optional progressHandler to update the user interface, provide a percentage of completion, or process partial results. note: The Vision framework may call the progress handler on a different dispatch queue from the thread on which you initiated the original request, so ensure that your handler can execute asynchronously, in a thread-safe manner.

## Topics

### Tracking Progress

- [progressHandler](vision/vnrequestprogressproviding/progresshandler.md)
- [indeterminate](vision/vnrequestprogressproviding/indeterminate.md)

## Relationships

### Inherits From

- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

### Conforming Types

- [VNRecognizeTextRequest](vision/vnrecognizetextrequest.md)

## See Also

### Request progress tracking

- [VNRequestProgressHandler](vision/vnrequestprogresshandler.md)
