---
title: "generateCGImagesAsynchronously(forTimes:completionHandler:)"
framework: avfoundation
role: symbol
role_heading: Instance Method
path: "avfoundation/avassetimagegenerator/generatecgimagesasynchronously(fortimes:completionhandler:)"
---

# generateCGImagesAsynchronously(forTimes:completionHandler:)

Generates images asynchronously for an array of requested times, and returns the results in a callback.

## Declaration

```swift
func generateCGImagesAsynchronously(forTimes requestedTimes: [NSValue], completionHandler handler: @escaping AVAssetImageGeneratorCompletionHandler)
```

## Parameters

- `requestedTimes`: An array of times, contained in NSValue objects, in the video timeline for which to generate images.
- `handler`: A callback that the image generator invokes for each requested image time.

## Discussion

Discussion Swift clients should prefer the asynchronous images(for:) method instead.

## Topics

### Data types

- [AVAssetImageGeneratorCompletionHandler](avfoundation/avassetimagegeneratorcompletionhandler.md)
- [AVAssetImageGenerator.Result](avfoundation/avassetimagegenerator/result.md)

## See Also

### Generating images

- [image(at:)](avfoundation/avassetimagegenerator/image(at:).md)
- [images(for:)](avfoundation/avassetimagegenerator/images(for:).md)
- [AVAssetImageGenerator.Images](avfoundation/avassetimagegenerator/images.md)
- [generateCGImageAsynchronously(for:completionHandler:)](avfoundation/avassetimagegenerator/generatecgimageasynchronously(for:completionhandler:).md)
- [AVAssetImageGeneratorCompletionHandler](avfoundation/avassetimagegeneratorcompletionhandler.md)
- [cancelAllCGImageGeneration()](avfoundation/avassetimagegenerator/cancelallcgimagegeneration().md)
- [copyCGImage(at:actualTime:)](avfoundation/avassetimagegenerator/copycgimage(at:actualtime:).md)
